#!/bin/bash # GNU AGPLv3+ set -ex BINDIR=/srv/gitea/bin GITEA_HOME=/srv/gitea export GITEA_WORK_DIR=/srv/gitea cd $BINDIR if [ -z "$1" ]; then echo "Need version value." else # VERSION="$1" # Verify. if ./gitea --version | grep -q "version $VERSION " ; then echo "Same version." else # Download. wget https://dl.gitea.io/gitea/$VERSION/gitea-$VERSION-linux-amd64 wget https://dl.gitea.io/gitea/$VERSION/gitea-$VERSION-linux-amd64.asc wget https://dl.gitea.io/gitea/$VERSION/gitea-$VERSION-linux-amd64.sha256 sha256sum -c gitea-$VERSION-linux-amd64.sha256 # gpg --keyserver keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2 gpg --verify gitea-$VERSION-linux-amd64.asc gitea-$VERSION-linux-amd64 # Flush queues. su - git -c "cd /srv/gitea/bin ; $BINDIR/gitea -c /etc/gitea/gitea.ini manager flush-queues" # Stop. systemctl stop gitea # Dump. su - git -c "cd /srv/gitea/bin ; $BINDIR/gitea dump --tempdir $GITEA_HOME/tmp/ -c /etc/gitea/gitea.ini" # Call doctor. su - git -c "cd /srv/gitea/bin ; $BINDIR/gitea doctor --all --fix -c /etc/gitea/gitea.ini -C /srv/gitea/custom -w /srv/gitea" # Upgrade. chmod u+x gitea-$VERSION-linux-amd64 chown git.git gitea-$VERSION-linux-amd64 ln --force gitea-$VERSION-linux-amd64 gitea # Start. #systemctl start gitea echo "Please, check then start the service Gitea." read -e -p "Start Gitea service? [Y/n] " choice if [[ "$choice" =~ ^[yY]$ ]]; then echo "Restarting…" systemctl start gitea journalctl -f -u gitea fi fi fi