heroku_gitea/conf_script.sh
2024-10-24 21:32:55 +02:00

42 lines
1.2 KiB
Bash

#!/bin/bash
if [ -n "$HEROKU_APP_ID" ] && [ -n "$HEROKU_APP_NAME" ]; then
APP_URL="https://${HEROKU_APP_NAME}-${HEROKU_APP_ID}.herokuapp.com/"
else
if [ -f /app/app_link.txt ]; then
APP_URL=$(cat /app/app_link.txt)
else
echo "Neither HEROKU_APP_NAME/ID nor /app/app_link.txt is available. Exiting."
exit 1
fi
fi
echo $APP_URL
if [[ $DATABASE_URL =~ ^postgres://([^:]+):([^@]+)@([^:]+):([0-9]+)/([^/]+)$ ]]; then
DB_USER="${BASH_REMATCH[1]}"
DB_PASS="${BASH_REMATCH[2]}"
DB_HOST="${BASH_REMATCH[3]}:${BASH_REMATCH[4]}"
DB_NAME="${BASH_REMATCH[5]}"
else
echo "DATABASE_URL parse error"
exit 1
fi
mkdir -p /var/lib/gitea/custom/conf
echo "[server]" > /var/lib/gitea/custom/conf/app.ini
echo "ROOT_URL = $APP_URL" >> /var/lib/gitea/custom/conf/app.ini
echo "[database]" >> /var/lib/gitea/custom/conf/app.ini
echo "DB_TYPE = postgres" >> /var/lib/gitea/custom/conf/app.ini
echo "HOST = $DB_HOST" >> /var/lib/gitea/custom/conf/app.ini
echo "NAME = $DB_NAME" >> /var/lib/gitea/custom/conf/app.ini
echo "USER = $DB_USER" >> /var/lib/gitea/custom/conf/app.ini
echo "PASSWD = $DB_PASS" >> /var/lib/gitea/custom/conf/app.ini
echo "SSL_MODE = require" >> /var/lib/gitea/custom/conf/app.ini
/usr/local/bin/gitea web --port $PORT