lemmy/docker/prod/deploy.sh
Dessalines edb2e40383
Automated travis docker testing and deploys. (#1023)
* Testing out a travis 1.

* Testing out a travis 2.

* Testing out a travis 3.

* Testing out a travis 4.

* Testing out a travis 5.

* Testing out a travis 6. Trying a failing test

* Testing out a travis 7. Trying to cache the docker images.

* Testing out a travis 8. Still not correctly failing.

* Trying full path for docker_images dir.

* Fixing test again, trying a dockerhub deploy.

* Fixing test again, trying a dockerhub deploy 2.

* Remove caching.

* Trying to fix docker deploy.

* Try using the travis tag

* Using dessalines/lemmy:travis

* Try using the prod dockerfile now.

* Update http sigs dependency

* Finally getting this mostly working.

Co-authored-by: asonix <asonix@asonix.dog>
2020-07-24 22:06:00 -04:00

62 lines
1.7 KiB
Bash
Executable file
Vendored

#!/bin/sh
set -e
git checkout main
# Import translations
git fetch weblate
git merge weblate/main
# Creating the new tag
new_tag="$1"
third_semver=$(echo $new_tag | cut -d "." -f 3)
# Setting the version on the front end
cd ../../
# Setting the version on the backend
echo "pub const VERSION: &str = \"$new_tag\";" > "server/src/version.rs"
git add "server/src/version.rs"
# Setting the version for Ansible
echo $new_tag > "ansible/VERSION"
git add "ansible/VERSION"
cd docker/prod || exit
# Changing the docker-compose prod
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../prod/docker-compose.yml
sed -i "s/dessalines\/lemmy:.*/dessalines\/lemmy:$new_tag/" ../../ansible/templates/docker-compose.yml
sed -i "s/dessalines\/lemmy:v.*/dessalines\/lemmy:$new_tag/" ../travis/docker_push.sh
git add ../prod/docker-compose.yml
git add ../../ansible/templates/docker-compose.yml
git add ../travis/docker_push.sh
# The commit
git commit -m"Version $new_tag"
git tag $new_tag
# Now doing the building on travis, but leave this in for when you need to do an arm build
# export COMPOSE_DOCKER_CLI_BUILD=1
# export DOCKER_BUILDKIT=1
# # Rebuilding docker
# if [ $third_semver -eq 0 ]; then
# # 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 \
# --push
# else
# docker buildx build --platform linux/amd64 ../../ \
# --file Dockerfile \
# --tag dessalines/lemmy:$new_tag \
# --push
# fi
# Push
git push origin $new_tag
git push
# Pushing to any ansible deploys
# cd ../../../lemmy-ansible || exit
# ansible-playbook -i prod playbooks/site.yml --vault-password-file vault_pass