diff --git a/.env.sample b/.env.sample index 24e956e..75839f9 100644 --- a/.env.sample +++ b/.env.sample @@ -8,11 +8,14 @@ COMPOSE_FILE="$COMPOSE_FILE:compose.mariadb.yml" # COMPOSE_FILE="$COMPOSE_FILE:compose.sqlite3.yml" # COMPOSE_FILE="$COMPOSE_FILE:compose.postgres.yml" -# Enable to use forgejo instead of gitea -# COMPOSE_FILE="$COMPOSE_FILE:compose.forgejo.yml" +# Enable Git LFS on plain gitea (not needed with forgejo, which bundles it). +# Mounts the lfs_jwt_secret secret and sets GITEA_LFS_START_SERVER=true. +# COMPOSE_FILE="$COMPOSE_FILE:compose.lfs.yml" # SECRET_LFS_JWT_SECRET_VERSION=v1 # length=43 -GITEA_DOMAIN=git.example.com +# Anubis +# COMPOSE_FILE="$COMPOSE_FILE:compose.anubis.yml" + GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATION=true GITEA_APP_NAME="Git with solidaritea" GITEA_AUTO_WATCH_NEW_REPOS=false @@ -78,3 +81,4 @@ SECRET_SECRET_KEY_VERSION=v1 # length=64 # GITEA_REPO_INDEXER_ENABLED=false # GITEA_ISSUE_INDEXER_TYPE=db # GITEA_STARTUP_TIMEOUT=-1 + diff --git a/README.md b/README.md index 7ac421e..bc2691b 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ * **Category**: Development * **Status**: 5 -* **Image**: [`gitea/gitea`](https://hub.docker.com/gitea/gitea), 4, upstream +* **Image**: [`gitea/gitea`](https://hub.docker.com/r/gitea/gitea), 4, upstream * **Healthcheck**: Yes * **Backups**: Yes * **Email**: Yes @@ -31,7 +31,7 @@ Run ```bash -abra app run YOURAPPNAME app gitea -c /etc/gitea/app.ini admin user create --username USERNAME --admin --random-password --email EMAIL +abra app run YOURAPPNAME app -- gitea -c /etc/gitea/app.ini admin user create --username USERNAME --admin --random-password --email EMAIL ``` See the [Gitea command-line documentation](https://docs.gitea.io/en-us/command-line/) for more options. Make sure not to forget the `-c /etc/gitea/app.ini`. diff --git a/abra.sh b/abra.sh index ecb8721..68fe314 100644 --- a/abra.sh +++ b/abra.sh @@ -1,4 +1,4 @@ -export APP_INI_VERSION=v21 +export APP_INI_VERSION=v23 export DOCKER_SETUP_SH_VERSION=v1 export PG_BACKUP_VERSION=v1 diff --git a/app.ini.tmpl b/app.ini.tmpl index 9d5ceb2..49979eb 100644 --- a/app.ini.tmpl +++ b/app.ini.tmpl @@ -61,7 +61,7 @@ SSH_LISTEN_PORT = {{ env "GITEA_SSH_PORT" }} SSH_PORT = {{ env "GITEA_SSH_PORT" }} START_SSH_SERVER = true LFS_START_SERVER = {{ env "GITEA_LFS_START_SERVER" }} -{{ if eq (env "FORGE") "forgejo" }} +{{ if (eq (env "GITEA_LFS_START_SERVER") "true") }} LFS_JWT_SECRET = {{ secret "lfs_jwt_secret" }} {{ end }} diff --git a/compose.anubis.yml b/compose.anubis.yml new file mode 100644 index 0000000..2e3fd28 --- /dev/null +++ b/compose.anubis.yml @@ -0,0 +1,7 @@ +--- +version: "3.8" +services: + app: + deploy: + labels: + - "traefik.http.routers.${STACK_NAME}.middlewares=anubis,${STACK_NAME}_cors" diff --git a/compose.forgejo.yml b/compose.lfs.yml similarity index 59% rename from compose.forgejo.yml rename to compose.lfs.yml index acc0376..e5c6750 100644 --- a/compose.forgejo.yml +++ b/compose.lfs.yml @@ -1,12 +1,12 @@ -version: '3.8' +version: "3.8" services: app: - image: codeberg.org/forgejo/forgejo:12.0.2-rootless environment: - - FORGE=forgejo + - GITEA_LFS_START_SERVER=true secrets: - - lfs_jwt_secret + - lfs_jwt_secret + secrets: lfs_jwt_secret: name: ${STACK_NAME}_lfs_jwt_secret_${SECRET_LFS_JWT_SECRET_VERSION} diff --git a/compose.mariadb.yml b/compose.mariadb.yml index b4cc117..4fc7bc3 100644 --- a/compose.mariadb.yml +++ b/compose.mariadb.yml @@ -10,7 +10,7 @@ services: secrets: - db_password db: - image: "mariadb:10.11.2" + image: "mariadb:10.11.19" deploy: labels: backupbot.backup.pre-hook: 'mysqldump --single-transaction -u root -p"$$(cat /run/secrets/db_root_password)" gitea > /var/lib/mysql/backup.sql' diff --git a/compose.postgres.yml b/compose.postgres.yml index b41c078..96719a5 100644 --- a/compose.postgres.yml +++ b/compose.postgres.yml @@ -10,7 +10,7 @@ services: secrets: - db_password db: - image: postgres:15.13 + image: postgres:15.19 deploy: labels: backupbot.backup.pre-hook: "/pg_backup.sh backup" diff --git a/compose.yml b/compose.yml index 91ba74e..aa26f5f 100644 --- a/compose.yml +++ b/compose.yml @@ -3,7 +3,7 @@ version: "3.8" services: app: - image: "gitea/gitea:1.24.2-rootless" + image: "gitea/gitea:28.2.0-rootless" configs: - source: app_ini target: /etc/gitea/app.ini @@ -15,7 +15,6 @@ services: - jwt_secret - secret_key environment: - - FORGE=gitea - GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATION - GITEA_APP_NAME - GITEA_AUTO_WATCH_NEW_REPOS @@ -71,7 +70,7 @@ services: deploy: update_config: failure_action: rollback - order: start-first + order: stop-first labels: - "backupbot.backup=${ENABLE_BACKUPS:-true}" - "traefik.enable=true" @@ -88,7 +87,7 @@ services: - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolalloworiginlist=https://${GITEA_CORS_ALLOW_DOMAIN}" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolmaxage=100" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.addvaryheader=true" - - coop-cloud.${STACK_NAME}.version=3.5.2+1.24.2-rootless + - coop-cloud.${STACK_NAME}.version=3.6.10+28.2.0-rootless networks: diff --git a/release/3.6.2+1.27.1-rootless b/release/3.6.2+1.27.1-rootless new file mode 100644 index 0000000..a3405a4 --- /dev/null +++ b/release/3.6.2+1.27.1-rootless @@ -0,0 +1,6 @@ +Forgejo support has been moved to its own recipe. Make the move by: + +* Getting the recipe locally with `abra recipe fetch forgejo` +* Changing the recipe's TYPE with `abra application config FORGEJO_DOMAIN` +* Redeploy the app with `abra application undeploy` and `abra + application deploy` diff --git a/release/3.6.8+28.0.0-rootless b/release/3.6.8+28.0.0-rootless new file mode 100644 index 0000000..1c44d41 --- /dev/null +++ b/release/3.6.8+28.0.0-rootless @@ -0,0 +1 @@ + git egress has been reworked. ALLOWED_DOMAINS / BLOCKED_DOMAINS / ALLOW_LOCALNETWORKS are deprecated (migrated to [security] ALLOWED_HOST_LIST / BLOCKED_HOST_LIST) Operators who restrict git egress must switch to EGRESS_MODE = strict + explicit CIDRs to keep a deny-by-default policy. \ No newline at end of file