forge/upgrade_gitea

45 lines
1.2 KiB
Bash

#!/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
# Stop.
systemctl stop gitea
# Dump.
su - git -c "cd /srv/gitea/bin ; $BINDIR/gitea dump --tempdir $GITEA_HOME/tmp/ -c /etc/gitea/gitea.ini"
# 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
fi
fi