diff --git a/.gitignore b/.gitignore index 3a79811..62aed7d 100644 --- a/.gitignore +++ b/.gitignore @@ -6,7 +6,6 @@ certbot/www backend/token/ .env -gitea/config/app.ini gitea/data/* # Gitea runner diff --git a/gitea-runner/download.sh b/gitea-runner/download.sh new file mode 100755 index 0000000..bd65e65 --- /dev/null +++ b/gitea-runner/download.sh @@ -0,0 +1,24 @@ +#!/usr/bin/env bash +set -euo pipefail + +VERSION="0.2.11" +BASE_URL="https://gitea.com/gitea/act_runner/releases/download/v${VERSION}" + +ARCH=$(uname -m) +case "$ARCH" in + x86_64) ASSET="act_runner-${VERSION}-linux-amd64" ;; + aarch64) ASSET="act_runner-${VERSION}-linux-arm64" ;; + armv7l) ASSET="act_runner-${VERSION}-linux-armv7" ;; + *) + echo "Unsupported architecture: $ARCH" >&2 + exit 1 + ;; +esac + +SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" +DEST="${SCRIPT_DIR}/act_runner" + +echo "Downloading act_runner v${VERSION} for ${ARCH}..." +curl -fSL "${BASE_URL}/${ASSET}" -o "$DEST" +chmod +x "$DEST" +echo "Downloaded to $DEST" diff --git a/gitea-runner/run.sh b/gitea-runner/run.sh index 7bc2960..6252961 100755 --- a/gitea-runner/run.sh +++ b/gitea-runner/run.sh @@ -1,5 +1,10 @@ #!/usr/bin/env bash +if [ ! -f ./act_runner ]; then + echo "act_runner binary not found. Downloading..." >&2 + bash "$(dirname "$0")/download.sh" +fi + echo "Waiting for localhost:3000 to respond..." >&2 while ! curl -sf http://localhost:3000 > /dev/null 2>&1; do diff --git a/gitea/config/app.ini b/gitea/config/app.ini new file mode 100644 index 0000000..eb71fa2 --- /dev/null +++ b/gitea/config/app.ini @@ -0,0 +1,98 @@ +APP_NAME = Gitea: Git with a cup of tea +RUN_USER = git +RUN_MODE = prod +WORK_PATH = /var/lib/gitea + +[repository] +ROOT = /var/lib/gitea/git/repositories + +[repository.local] +LOCAL_COPY_PATH = /tmp/gitea/local-repo + +[repository.upload] +TEMP_PATH = /tmp/gitea/uploads + +[server] +APP_DATA_PATH = /var/lib/gitea +SSH_DOMAIN = adam-french.co.uk +HTTP_PORT = 3000 +ROOT_URL = https://adam-french.co.uk/gitea/ +DISABLE_SSH = false +; In rootless gitea container only internal ssh server is supported +START_SSH_SERVER = true +SSH_PORT = 2222 +SSH_LISTEN_PORT = 2222 +BUILTIN_SSH_SERVER_USER = git +LFS_START_SERVER = true +DOMAIN = stppi.local +LFS_JWT_SECRET = +OFFLINE_MODE = true + +[database] +PATH = /var/lib/gitea/data/gitea.db +DB_TYPE = postgres +HOST = db +NAME = gitea +USER = postgres +PASSWD = +SCHEMA = +SSL_MODE = disable +LOG_SQL = false + +[session] +PROVIDER_CONFIG = /var/lib/gitea/data/sessions +PROVIDER = file + +[picture] +AVATAR_UPLOAD_PATH = /var/lib/gitea/data/avatars +REPOSITORY_AVATAR_UPLOAD_PATH = /var/lib/gitea/data/repo-avatars + +[attachment] +PATH = /var/lib/gitea/data/attachments + +[log] +ROOT_PATH = /var/lib/gitea/data/log +MODE = console +LEVEL = info + +[security] +INSTALL_LOCK = true +SECRET_KEY = +REVERSE_PROXY_LIMIT = 1 +REVERSE_PROXY_TRUSTED_PROXIES = * +INTERNAL_TOKEN = +PASSWORD_HASH_ALGO = pbkdf2 + +[service] +DISABLE_REGISTRATION = true +REQUIRE_SIGNIN_VIEW = false +REGISTER_EMAIL_CONFIRM = false +ENABLE_NOTIFY_MAIL = false +ALLOW_ONLY_EXTERNAL_REGISTRATION = false +ENABLE_CAPTCHA = false +DEFAULT_KEEP_EMAIL_PRIVATE = false +DEFAULT_ALLOW_CREATE_ORGANIZATION = true +DEFAULT_ENABLE_TIMETRACKING = true +NO_REPLY_ADDRESS = noreply.localhost + +[lfs] +PATH = /var/lib/gitea/git/lfs + +[mailer] +ENABLED = false + +[openid] +ENABLE_OPENID_SIGNIN = true +ENABLE_OPENID_SIGNUP = true + +[cron.update_checker] +ENABLED = false + +[repository.pull-request] +DEFAULT_MERGE_STYLE = merge + +[repository.signing] +DEFAULT_TRUST_MODEL = committer + +[oauth2] +JWT_SECRET =