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