lemmy/docker/dev/deploy.sh

77 lines
2.2 KiB
Bash
Raw Normal View History

2019-08-25 11:57:05 -06:00
#!/bin/sh
git checkout master
# Import translations
2020-03-01 16:21:52 -07:00
git fetch weblate
git merge weblate/master
2019-08-25 11:57:05 -06:00
# Creating the new tag
new_tag="$1"
third_semver=$(echo $new_tag | cut -d "." -f 3)
2019-08-25 11:57:05 -06:00
# Setting the version on the front end
cd ../../
echo "export const version: string = '$new_tag';" > "ui/src/version.ts"
2019-11-14 19:08:25 -07:00
git add "ui/src/version.ts"
# Setting the version on the backend
echo "pub const VERSION: &str = \"$new_tag\";" > "server/src/version.rs"
2019-11-14 19:08:25 -07:00
git add "server/src/version.rs"
2020-01-31 04:03:26 -07:00
# Setting the version for Ansible
2020-02-29 13:49:09 -07:00
echo $new_tag > "ansible/VERSION"
2020-01-31 04:03:26 -07:00
git add "ansible/VERSION"
2019-08-25 11:57:05 -06:00
cd docker/dev || exit
2019-08-25 11:57:05 -06:00
# Changing the docker-compose prod
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../prod/docker-compose.yml
2020-02-02 15:13:59 -07:00
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../../ansible/templates/docker-compose.yml
2019-08-25 11:57:05 -06:00
git add ../prod/docker-compose.yml
2020-02-02 15:13:59 -07:00
git add ../../ansible/templates/docker-compose.yml
2019-08-25 11:57:05 -06:00
# The commit
2019-10-15 17:50:00 -06:00
git commit -m"Version $new_tag"
git tag $new_tag
2019-08-25 11:57:05 -06:00
# Rebuilding docker
2019-09-08 10:21:52 -06:00
docker-compose build
2019-10-31 21:03:43 -06:00
docker tag dev_lemmy:latest dessalines/lemmy:x64-$new_tag
docker push dessalines/lemmy:x64-$new_tag
# Build for Raspberry Pi / other archs
# Arm currently not working
# docker build -t lemmy:armv7hf -f Dockerfile.armv7hf ../../
# docker tag lemmy:armv7hf dessalines/lemmy:armv7hf-$new_tag
# docker push dessalines/lemmy:armv7hf-$new_tag
# aarch64
# Only do this on major releases (IE the third semver is 0)
if [ $third_semver -eq 0 ]; then
2020-01-20 12:39:41 -07:00
# Registering qemu binaries
docker run --rm --privileged multiarch/qemu-user-static:register --reset
docker build -t lemmy:aarch64 -f Dockerfile.aarch64 ../../
docker tag lemmy:aarch64 dessalines/lemmy:arm64-$new_tag
docker push dessalines/lemmy:arm64-$new_tag
fi
2019-10-31 21:03:43 -06:00
# Creating the manifest for the multi-arch build
if [ $third_semver -eq 0 ]; then
docker manifest create dessalines/lemmy:$new_tag \
2019-10-31 21:03:43 -06:00
dessalines/lemmy:x64-$new_tag \
dessalines/lemmy:arm64-$new_tag
else
docker manifest create dessalines/lemmy:$new_tag \
dessalines/lemmy:x64-$new_tag
fi
2019-10-31 21:03:43 -06:00
docker manifest push dessalines/lemmy:$new_tag
2019-11-22 17:17:20 -07:00
# Push
git push origin $new_tag
git push
# Pushing to any ansible deploys
2020-04-03 12:44:10 -06:00
cd ../../../lemmy-ansible || exit
ansible-playbook -i prod playbooks/site.yml --vault-password-file vault_pass