Piotr Dobrowolski | 3a3b425 | 2023-09-24 14:12:59 +0200 | [diff] [blame] | 1 | #!/bin/bash |
| 2 | |
| 3 | for FOLDER in /data/gitea/log /data/git /data/ssh; do |
| 4 | mkdir -p ${FOLDER} |
| 5 | done |
| 6 | |
| 7 | if [ ! -d /data/git/.ssh ]; then |
| 8 | mkdir -p /data/git/.ssh |
| 9 | fi |
| 10 | |
| 11 | if [ ! -f /data/git/.ssh/environment ]; then |
| 12 | echo "GITEA_CUSTOM=$GITEA_CUSTOM" >| /data/git/.ssh/environment |
| 13 | |
| 14 | elif ! grep -q "^GITEA_CUSTOM=$GITEA_CUSTOM$" /data/git/.ssh/environment; then |
| 15 | sed -i /^GITEA_CUSTOM=/d /data/git/.ssh/environment |
| 16 | echo "GITEA_CUSTOM=$GITEA_CUSTOM" >> /data/git/.ssh/environment |
| 17 | fi |
| 18 | |
| 19 | if [ ! -f ${GITEA_CUSTOM}/conf/app.ini ]; then |
| 20 | mkdir -p ${GITEA_CUSTOM}/conf |
| 21 | |
| 22 | # Set INSTALL_LOCK to true only if SECRET_KEY is not empty and |
| 23 | # INSTALL_LOCK is empty |
| 24 | if [ -n "$SECRET_KEY" ] && [ -z "$INSTALL_LOCK" ]; then |
| 25 | INSTALL_LOCK=true |
| 26 | fi |
| 27 | |
| 28 | # Substitude the environment variables in the template |
| 29 | env -i \ |
| 30 | APP_NAME="${APP_NAME:-"Gitea: Git with a cup of tea"}" \ |
| 31 | RUN_MODE="${RUN_MODE:-"dev"}" \ |
| 32 | DOMAIN="${DOMAIN:-"localhost"}" \ |
| 33 | SSH_DOMAIN="${SSH_DOMAIN:-"localhost"}" \ |
| 34 | HTTP_PORT="${HTTP_PORT:-"3000"}" \ |
| 35 | ROOT_URL="${ROOT_URL:-""}" \ |
| 36 | DISABLE_SSH="${DISABLE_SSH:-"false"}" \ |
| 37 | SSH_PORT="${SSH_PORT:-"22"}" \ |
| 38 | SSH_LISTEN_PORT="${SSH_LISTEN_PORT:-"${SSH_PORT}"}" \ |
| 39 | LFS_START_SERVER="${LFS_START_SERVER:-"false"}" \ |
| 40 | DB_TYPE="${DB_TYPE:-"sqlite3"}" \ |
| 41 | DB_HOST="${DB_HOST:-"localhost:3306"}" \ |
| 42 | DB_NAME="${DB_NAME:-"gitea"}" \ |
| 43 | DB_USER="${DB_USER:-"root"}" \ |
| 44 | DB_PASSWD="${DB_PASSWD:-""}" \ |
| 45 | INSTALL_LOCK="${INSTALL_LOCK:-"false"}" \ |
| 46 | DISABLE_REGISTRATION="${DISABLE_REGISTRATION:-"false"}" \ |
| 47 | REQUIRE_SIGNIN_VIEW="${REQUIRE_SIGNIN_VIEW:-"false"}" \ |
| 48 | SECRET_KEY="${SECRET_KEY:-""}" \ |
| 49 | ALLOW_ONLY_EXTERNAL_REGISTRATION="${ALLOW_ONLY_EXTERNAL_REGISTRATION:-"false"}" \ |
| 50 | OFFLINE_MODE="${OFFLINE_MODE:-"true"}" \ |
| 51 | MINIO_ENDPOINT="${MINIO_ENDPOINT:-""}" \ |
| 52 | MINIO_ACCESS_KEY_ID="${MINIO_ACCESS_KEY_ID:-""}" \ |
| 53 | MINIO_SECRET_ACCESS_KEY="${MINIO_SECRET_ACCESS_KEY:-""}" \ |
| 54 | MINIO_BUCKET="${MINIO_BUCKET:-""}" \ |
| 55 | MAILER_FROM="${MAILER_FROM:-""}" \ |
| 56 | MAILER_HOST="${MAILER_HOST:-""}" \ |
| 57 | MAILER_PORT="${MAILER_PORT:-""}" \ |
| 58 | MAILER_USER="${MAILER_USER:-""}" \ |
| 59 | MAILER_PASSWORD="${MAILER_PASSWORD:-""}" \ |
| 60 | envsubst < /etc/templates/app.ini > ${GITEA_CUSTOM}/conf/app.ini |
| 61 | cat ${GITEA_CUSTOM}/conf/app.ini |
| 62 | fi |
| 63 | |
| 64 | if [ $# -gt 0 ]; then |
| 65 | exec "$@" |
| 66 | else |
| 67 | exec /app/gitea/gitea web |
| 68 | fi |
| 69 | |