lemmy/docker/prod/deploy.sh

63 lines
1.7 KiB
Bash
Raw Normal View History

2019-08-25 17:57:05 +00:00
#!/bin/sh
2020-06-12 13:29:50 +00:00
set -e
2020-06-18 02:11:48 +00:00
# git checkout master
2019-08-25 17:57:05 +00:00
# Import translations
2020-03-01 23:21:52 +00:00
git fetch weblate
git merge weblate/master
2019-08-25 17:57:05 +00:00
# Creating the new tag
new_tag="$1"
third_semver=$(echo $new_tag | cut -d "." -f 3)
2019-08-25 17:57:05 +00:00
# Setting the version on the front end
cd ../../
echo "export const version: string = '$new_tag';" > "ui/src/version.ts"
2019-11-15 02:08:25 +00: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-15 02:08:25 +00:00
git add "server/src/version.rs"
2020-01-31 11:03:26 +00:00
# Setting the version for Ansible
2020-02-29 20:49:09 +00:00
echo $new_tag > "ansible/VERSION"
2020-01-31 11:03:26 +00:00
git add "ansible/VERSION"
2019-08-25 17:57:05 +00:00
2020-06-12 13:29:50 +00:00
cd docker/prod || exit
2019-08-25 17:57:05 +00:00
# Changing the docker-compose prod
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../prod/docker-compose.yml
2020-02-02 22:13:59 +00:00
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../../ansible/templates/docker-compose.yml
2019-08-25 17:57:05 +00:00
git add ../prod/docker-compose.yml
2020-02-02 22:13:59 +00:00
git add ../../ansible/templates/docker-compose.yml
2019-08-25 17:57:05 +00:00
# The commit
2019-10-15 23:50:00 +00:00
git commit -m"Version $new_tag"
git tag $new_tag
2019-08-25 17:57:05 +00:00
2020-06-12 13:29:50 +00:00
export COMPOSE_DOCKER_CLI_BUILD=1
export DOCKER_BUILDKIT=1
2019-08-25 17:57:05 +00:00
# Rebuilding docker
if [ $third_semver -eq 0 ]; then
2020-06-18 02:11:48 +00:00
docker buildx build --platform linux/amd64 ../../ \
--file Dockerfile \
--tag dessalines/lemmy:$new_tag \
--file docker/dev/Dockerfile.m \
--push .
else
2020-06-18 02:11:48 +00:00
# TODO get linux/arm/v7 build working
# Build for Raspberry Pi / other archs too
docker buildx build --platform linux/amd64,linux/arm64 ../../ \
--file Dockerfile \
--tag dessalines/lemmy:$new_tag \
--file docker/dev/Dockerfile.m \
--push .
fi
2019-11-01 03:03:43 +00:00
2019-11-23 00:17:20 +00:00
# Push
git push origin $new_tag
git push
# Pushing to any ansible deploys
2020-04-03 18:44:10 +00:00
cd ../../../lemmy-ansible || exit
ansible-playbook -i prod playbooks/site.yml --vault-password-file vault_pass