Add common module managing common services and scripts (act_runner, create/restore backups)

Fix script environment variables
Add Fefan configuration
Fix gateway services file provisionning through ssh
This commit is contained in:
2026-01-20 15:42:17 +01:00
parent 152f09ac50
commit 1de2fe9ab4
53 changed files with 285 additions and 442 deletions

View File

@@ -1,10 +1,10 @@
#!/bin/bash
set -euo pipefail
source /opt/gitea/env.sh
source /opt/environment/.env
TIMESTAMP=$(date +'%Y-%m-%d_%H%M%S')
sudo -u "$GITEA_USER" gitea dump -c "$GITEA_HOME/app.ini" -f $GITEA_BACKUPS_DIR/gitea-dump-$TIMESTAMP.zip
sudo -u "$GITEA_USER" gitea dump -c "$GITEA_CONF" -f $SERVICE_BACKUPS_DIR/$SERVICE_BACKUPS_PREFIX-$TIMESTAMP.$SERVICE_BACKUPS_EXTENSION
ls -1dt $GITEA_BACKUPS_DIR/gitea-dump-*.zip | tail -n +5 | xargs -r rm -f
ls -1dt $SERVICE_BACKUPS_DIR/$SERVICE_BACKUPS_PREFIX-*.$SERVICE_BACKUPS_EXTENSION | tail -n +5 | xargs -r rm -f

View File

@@ -1,4 +0,0 @@
#!/bin/bash
set -a
[ -f /opt/gitea/gitea.env ] && source /opt/gitea/gitea.env
set +a

View File

@@ -1,7 +1,7 @@
#!/bin/bash
set -euo pipefail
source /opt/gitea/env.sh
source /opt/environment/.env
# Gitea user
if ! id -u $GITEA_USER >/dev/null 2>&1; then
@@ -41,15 +41,15 @@ CREATE ROLE $DB_USER WITH LOGIN PASSWORD '$DB_PASS';
CREATE DATABASE $DB_NAME WITH OWNER $DB_USER TEMPLATE template0 ENCODING UTF8 LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8';
EOF
if ls -1 "$GITEA_BACKUPS_DIR"/gitea-dump-*.zip >/dev/null 2>&1; then
if ls -1 "$SERVICE_BACKUPS_DIR"/$SERVICE_BACKUPS_PREFIX-*.$SERVICE_BACKUPS_EXTENSION >/dev/null 2>&1; then
echo "---- Backup found, restoring Gitea ----"
/usr/local/bin/restore-backup.sh
else
echo "---- No backup found in $GITEA_BACKUPS_DIR, skipping restore ----"
echo "---- No backup found in $SERVICE_BACKUPS_DIR, skipping restore ----"
fi
sudo chown -R $GITEA_USER:$GITEA_USER $GITEA_BACKUPS_DIR
sudo chmod -R 770 $GITEA_BACKUPS_DIR
sudo chown -R $GITEA_USER:$GITEA_USER $SERVICE_BACKUPS_DIR
sudo chmod -R 770 $SERVICE_BACKUPS_DIR
GITEA_SECRET_KEY=$("$GITEA_BINARY" generate secret SECRET_KEY)
GITEA_JWT_SECRET=$("$GITEA_BINARY" generate secret JWT_SECRET)
@@ -90,7 +90,7 @@ ENABLED=true
EOF
echo "---- Generated Gitea app.ini with secrets ----"
chown git:git $GITEA_CONF
chown $GITEA_USER:$GITEA_USER $GITEA_CONF
chmod 640 $GITEA_CONF
systemctl daemon-reload

View File

@@ -1,7 +1,7 @@
#!/bin/bash
set -euo pipefail
source /opt/gitea/env.sh
source /opt/environment/.env
sudo -u postgres psql <<EOF
DO \$\$
@@ -16,7 +16,7 @@ END
\$\$;
EOF
LATEST_BACKUP=$(ls -1 $GITEA_BACKUPS_DIR/gitea-dump-*.zip 2>/dev/null | sort | tail -n1)
LATEST_BACKUP=$(ls -1 $SERVICE_BACKUPS_DIR/$SERVICE_BACKUPS_PREFIX-*.$SERVICE_BACKUPS_EXTENSION 2>/dev/null | sort | tail -n1)
if [ -n "$LATEST_BACKUP" ] && [ -f "$LATEST_BACKUP" ]; then
TMP_DIR=$(mktemp -d)

View File

@@ -1,9 +0,0 @@
[Unit]
Description=Run backup weekly
[Timer]
OnCalendar=Sun *-*-* 01:00:00
Persistent=true
[Install]
WantedBy=timers.target