Compare commits

...

27 Commits

Author SHA1 Message Date
f
616d4437ed fix: stop complaining on logs 2025-01-07 13:33:38 -03:00
3wc
daf4a26f72 chore: publish 3.0.1+1.22.3-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-10-30 13:36:29 -04:00
3wc
7fec94eaec chore: publish 3.0.0+1.22.2-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-10-30 13:25:04 -04:00
0bfb666dd0 chore: publish 2.11.0+1.22.2-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-10-29 13:55:44 +01:00
2554109fab update forgejo to version 9.0.1 2024-10-29 13:55:32 +01:00
bd57d6121b update backupbot label
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-24 17:01:04 +02:00
3wc
cae11a78e6 chore: publish 2.10.1+1.22.2-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-10-02 14:01:17 -04:00
8e8809fd07 chore: publish 2.10.0+1.22.1-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-08-23 19:21:01 +01:00
24e4b09b07 chore: publish 2.9.1+1.22.0-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-08-15 12:25:05 +02:00
43d43fb2b7 fix APP_INI_VERSION 2024-08-15 12:24:30 +02:00
3wc
c5dada903e chore: publish 2.9.0+1.22.0-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-07-03 14:26:42 -04:00
9687f7f738 chore: publish 2.8.0+1.21.11-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-05-13 16:20:13 +02:00
92073fbba5 fix backup label
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-30 15:18:21 +02:00
f26296ba5c add backup label
All checks were successful
continuous-integration/drone/push Build is passing
2024-04-29 15:24:13 +02:00
baacc575c2 chore: publish 2.7.0+1.21.11-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-04-24 21:03:14 +01:00
53ffe86350 Merge pull request 'Adding more variable configs' (#36) from javielico/gitea:master into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #36
Reviewed-by: decentral1se <decentral1se@noreply.git.coopcloud.tech>
2024-04-24 10:01:46 +00:00
dbde635976 Removing access log to false as fallback has been removed on Gitea 1.21 2024-04-23 21:45:55 +01:00
2b15ff9c28 Added components to app.ini 2024-04-23 16:13:28 +01:00
94de0096fc Adding DISABLE_AUTH 2024-04-18 19:01:32 +01:00
e0d73083e2 Adding variable configs 2024-04-14 20:48:18 +01:00
ced3ea7978 chore: publish 2.6.2+1.21.10-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-04-01 17:05:17 +02:00
43abfe0483 chore: publish 2.6.1+1.21.10-rootless release
All checks were successful
continuous-integration/drone/tag Build is passing
continuous-integration/drone/push Build is passing
2024-04-01 16:38:05 +02:00
4683a81eeb Merge pull request 'feat: enable indexer for search' (#33) from indexer into master
All checks were successful
continuous-integration/drone/push Build is passing
Reviewed-on: #33
2024-04-01 11:58:54 +00:00
ea7e26698a feat: enable indexer for search [ci skip]
Some checks failed
continuous-integration/drone/pr Build is failing
See coop-cloud/organising#589
2024-03-31 01:31:39 +01:00
3wc
3815417c2c chore: publish 2.6.0+1.21.5-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-03-30 16:07:28 -03:00
3wc
4421f81a35 Add healthcheck, update metadata 2024-03-30 16:05:32 -03:00
3wc
a0e8ba4839 chore: publish 2.5.2+1.21.5-rootless release
All checks were successful
continuous-integration/drone/push Build is passing
2024-02-08 14:36:08 -03:00
13 changed files with 123 additions and 16 deletions

View File

@ -17,6 +17,7 @@ steps:
environment:
APP_INI_VERSION: v1
DOCKER_SETUP_SH_VERSION: v1
PG_BACKUP_VERSION: v1
DOMAIN: gitea.swarm-test.autonomic.zone
GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATION: true
GITEA_APP_NAME: Git with solidaritea

View File

@ -3,6 +3,7 @@ TYPE=gitea
DOMAIN=gitea.example.com
LETS_ENCRYPT_ENV=production
COMPOSE_FILE="compose.yml"
ENABLE_BACKUPS=true
COMPOSE_FILE="$COMPOSE_FILE:compose.mariadb.yml"
# COMPOSE_FILE="$COMPOSE_FILE:compose.postgres.yml"
@ -20,6 +21,15 @@ GITEA_ENABLE_OPENID_SIGNUP=true
GITEA_DISABLE_GRAVATAR=false
GITEA_ENABLE_FEDERATED_AVATAR=true
GITEA_LANDING_PAGE=organizations
GITEA_SHOW_USER_EMAIL=false
GITEA_DISABLE_REGULAR_ORG_CREATION=true
GITEA_DEFAULT_KEEP_EMAIL_PRIVATE=true
GITEA_DEFAULT_ALLOW_CREATE_ORGANIZATION=false
GITEA_ENABLE_USER_HEATMAP=false
GITEA_DEFAULT_USER_VISIBILITY=limited
GITEA_ALLOWED_USER_VISIBILITY_MODES=limited,private
GITEA_DEFAULT_ORG_VISIBILITY=limited
GITEA_REQUIRE_SIGNIN_VIEW=true
GITEA_REPO_UPLOAD_ENABLED=true
GITEA_REPO_UPLOAD_ALLOWED_TYPES=*/*
@ -41,7 +51,8 @@ SECRET_SECRET_KEY_VERSION=v1 # length=64
# SMTP Mailer
# COMPOSE_FILE="$COMPOSE_FILE:compose.smtp.yml"
# GITEA_SMTP_MAILER_ENABLED=1
# GITEA_MAILER_HOST=mail.gandi.net:465
# GITEA_MAILER_ADDR=mail.gandi.net
# GITEA_MAILER_PORT=465
# SECRET_SMTP_PASSWORD_VERSION=v1
# OATH2 Options
@ -51,3 +62,8 @@ SECRET_SECRET_KEY_VERSION=v1 # length=64
# GITEA_UPDATE_AVATAR=replace-me
# GITEA_ACCOUNT_LINKING=replace-me
# GITEA_OAUTH2_CLIENT_ENABLED=replace-me
# Indexer (for issue search)
# GITEA_REPO_INDEXER_ENABLED=false
# GITEA_ISSUE_INDEXER_TYPE=db
# GITEA_STARTUP_TIMEOUT=-1

View File

@ -4,11 +4,11 @@
<!-- metadata -->
* **Category**: Development
* **Status**: 3, stable
* **Status**: 5
* **Image**: [`gitea/gitea`](https://hub.docker.com/gitea/gitea), 4, upstream
* **Healthcheck**: Yes
* **Backups**: Yes
* **Email**: ?
* **Email**: Yes
* **Tests**: 2
* **SSO**: 3 (OAuth)
<!-- endmetadata -->

View File

@ -1,5 +1,6 @@
export APP_INI_VERSION=v15
export APP_INI_VERSION=v20
export DOCKER_SETUP_SH_VERSION=v1
export PG_BACKUP_VERSION=v1
abra_backup_app() {
_abra_backup_dir "app:/var/lib/gitea"

View File

@ -1,4 +1,5 @@
APP_NAME = {{ env "GITEA_APP_NAME" }}
WORK_PATH=/var/lib/gitea
[database]
DB_TYPE = {{ env "GITEA_DB_TYPE" }}
@ -16,6 +17,13 @@ ALLOW_ONLY_EXTERNAL_REGISTRATION = {{ env "GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATIO
AUTO_WATCH_NEW_REPOS = {{ env "GITEA_AUTO_WATCH_NEW_REPOS" }}
DISABLE_REGISTRATION = {{ env "GITEA_DISABLE_REGISTRATION" }}
ENABLE_NOTIFY_MAIL = {{ env "GITEA_ENABLE_NOTIFY_MAIL" }}
DEFAULT_KEEP_EMAIL_PRIVATE = {{ env "GITEA_DEFAULT_KEEP_EMAIL_PRIVATE" }}
DEFAULT_ALLOW_CREATE_ORGANIZATION = {{ env "GITEA_DEFAULT_ALLOW_CREATE_ORGANIZATION" }}
ENABLE_USER_HEATMAP = {{ env "GITEA_ENABLE_USER_HEATMAP" }}
DEFAULT_USER_VISIBILITY = {{ env "GITEA_DEFAULT_USER_VISIBILITY" }}
ALLOWED_USER_VISIBILITY_MODES = {{ env "GITEA_ALLOWED_USER_VISIBILITY_MODES" }}
DEFAULT_ORG_VISIBILITY = {{ env "GITEA_DEFAULT_ORG_VISIBILITY" }}
REQUIRE_SIGNIN_VIEW = {{ env "GITEA_REQUIRE_SIGNIN_VIEW" }}
[openid]
ENABLE_OPENID_SIGNIN = {{ env "GITEA_ENABLE_OPENID_SIGNIN" }}
@ -30,9 +38,13 @@ ALLOWED_TYPES = {{ env "GITEA_REPO_UPLOAD_ALLOWED_TYPES" }}
FILE_MAX_SIZE = {{ env "GITEA_REPO_UPLOAD_MAX_SIZE" }}
MAX_FILES = {{ env "GITEA_REPO_UPLOAD_MAX_FILES" }}
[ui]
SHOW_USER_EMAIL = {{ env "GITEA_SHOW_USER_EMAIL" }}
[indexer]
STARTUP_TIMEOUT = 0
REPO_INDEXER_ENABLED = {{ or (env "GITEA_REPO_INDEXER_ENABLED") "false" }}
ISSUE_INDEXER_TYPE= {{ or (env "GITEA_ISSUE_INDEXER_TYPE") "db" }}
STARTUP_TIMEOUT = {{ or (env "GITEA_STARTUP_TIMEOUT") "-1" }}
[server]
DOMAIN = {{ env "GITEA_DOMAIN" }}
@ -50,6 +62,9 @@ REVERSE_PROXY_LIMIT = 1
REVERSE_PROXY_TRUSTED_PROXIES = *
SECRET_KEY = {{ secret "secret_key" }}
[admin]
DISABLE_REGULAR_ORG_CREATION = {{ env "GITEA_DISABLE_REGULAR_ORG_CREATION" }}
[oauth2]
JWT_SECRET = {{ secret "jwt_secret" }}
@ -57,11 +72,12 @@ JWT_SECRET = {{ secret "jwt_secret" }}
[mailer]
ENABLED = true
FROM = {{ env "GITEA_MAILER_FROM" }}
HOST = {{ env "GITEA_MAILER_HOST" }}
PROTOCOL = smtps
SMTP_ADDR = {{ env "GITEA_MAILER_ADDR" }}
SMTP_PORT = {{ env "GITEA_MAILER_PORT" }}
USER = {{ env "GITEA_MAILER_USER" }}
PASSWD = {{ secret "smtp_password" }}
MAILER_TYPE = smtp
IS_TLS_ENABLED = true
{{ end }}
{{ if eq (env "GITEA_OAUTH2_CLIENT_ENABLED") "1" }}
@ -83,5 +99,4 @@ IS_INPUT_FILE = false
MODE=console
LEVEL=WARN
STACKTRACE_LEVEL=None
ENABLE_ACCESS_LOG=false
ENABLE_XORM_LOG=false

View File

@ -2,4 +2,4 @@ version: '3.8'
services:
app:
image: codeberg.org/forgejo/forgejo:1.19.3-0-rootless
image: codeberg.org/forgejo/forgejo:9.0.1-rootless

View File

@ -9,6 +9,11 @@ services:
- GITEA_DB_USER=gitea
db:
image: "mariadb:10.11.2"
deploy:
labels:
backupbot.backup.pre-hook: 'mysqldump --single-transaction -u root -p"$$(cat /run/secrets/db_root_password)" gitea > /var/lib/mysql/backup.sql'
backupbot.backup.volumes.mariadb.path: "backup.sql"
backupbot.restore.post-hook: "mariadb -u root -p\"$$(cat /run/secrets/db_root_password)\" gitea < /var/lib/mysql/backup.sql"
command: |
mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
environment:
@ -34,4 +39,3 @@ secrets:
volumes:
mariadb:
internal:

View File

@ -8,7 +8,12 @@ services:
- GITEA_DB_NAME=gitea
- GITEA_DB_USER=gitea
db:
image: postgres:15.5
image: postgres:15.8
deploy:
labels:
backupbot.backup.pre-hook: "/pg_backup.sh backup"
backupbot.backup.volumes.db.path: "backup.sql"
backupbot.restore.post-hook: '/pg_backup.sh restore'
environment:
- POSTGRES_DB=gitea
- POSTGRES_USER=gitea
@ -19,6 +24,10 @@ services:
- db:/var/lib/postgresql/data
networks:
- internal
configs:
- source: pg_backup
target: /pg_backup.sh
mode: 0555
secrets:
db_password:
@ -27,4 +36,8 @@ secrets:
volumes:
db:
internal:
configs:
pg_backup:
name: ${STACK_NAME}_pg_backup_${PG_BACKUP_VERSION}
file: pg_backup.sh

View File

@ -5,7 +5,8 @@ services:
app:
environment:
- GITEA_MAILER_FROM
- GITEA_MAILER_HOST
- GITEA_MAILER_ADDR
- GITEA_MAILER_PORT
- GITEA_MAILER_USER
secrets:
- smtp_password

View File

@ -3,7 +3,7 @@ version: "3.8"
services:
app:
image: "gitea/gitea:1.21.4-rootless"
image: "gitea/gitea:1.22.3-rootless"
configs:
- source: app_ini
target: /etc/gitea/app.ini
@ -40,7 +40,18 @@ services:
- GITEA_REPO_UPLOAD_ALLOWED_TYPES
- GITEA_REPO_UPLOAD_MAX_SIZE
- GITEA_REPO_UPLOAD_MAX_FILES
- GITEA_REPO_INDEXER_ENABLED
- GITEA_ISSUE_INDEXER_TYPE
- GITEA_STARTUP_TIMEOUT
- GITEA_SHOW_USER_EMAIL
- GITEA_DISABLE_REGULAR_ORG_CREATION
- GITEA_DEFAULT_KEEP_EMAIL_PRIVATE
- GITEA_DEFAULT_ALLOW_CREATE_ORGANIZATION
- GITEA_ENABLE_USER_HEATMAP
- GITEA_DEFAULT_USER_VISIBILITY
- GITEA_ALLOWED_USER_VISIBILITY_MODES
- GITEA_DEFAULT_ORG_VISIBILITY
- GITEA_REQUIRE_SIGNIN_VIEW
volumes:
- data:/var/lib/gitea
- config:/etc/gitea
@ -49,11 +60,18 @@ services:
networks:
- proxy
- internal
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/api/healthz"]
interval: 30s
timeout: 10s
retries: 10
start_period: 1m
deploy:
update_config:
failure_action: rollback
order: start-first
labels:
- "backupbot.backup=${ENABLE_BACKUPS:-true}"
- "traefik.enable=true"
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`)"
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
@ -67,7 +85,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=2.5.1+1.21.4-rootless
- coop-cloud.${STACK_NAME}.version=3.0.1+1.22.3-rootless
networks:

34
pg_backup.sh Normal file
View File

@ -0,0 +1,34 @@
#!/bin/bash
set -e
BACKUP_FILE='/var/lib/postgresql/data/backup.sql'
function backup {
export PGPASSWORD=$(cat $POSTGRES_PASSWORD_FILE)
pg_dump -U ${POSTGRES_USER} ${POSTGRES_DB} > $BACKUP_FILE
}
function restore {
cd /var/lib/postgresql/data/
restore_config(){
# Restore allowed connections
cat pg_hba.conf.bak > pg_hba.conf
su postgres -c 'pg_ctl reload'
}
# Don't allow any other connections than local
cp pg_hba.conf pg_hba.conf.bak
echo "local all all trust" > pg_hba.conf
su postgres -c 'pg_ctl reload'
trap restore_config EXIT INT TERM
# Recreate Database
psql -U ${POSTGRES_USER} -d postgres -c "DROP DATABASE ${POSTGRES_DB} WITH (FORCE);"
createdb -U ${POSTGRES_USER} ${POSTGRES_DB}
psql -U ${POSTGRES_USER} -d ${POSTGRES_DB} -1 -f $BACKUP_FILE
trap - EXIT INT TERM
restore_config
}
$@

View File

@ -0,0 +1 @@
This release adds a docker healthcheck for the main Gitea service -- please pay careful attention when updating apps, and as always feel free to ask in Matrix if you run into any bugs 🐛

View File

@ -0,0 +1,3 @@
BEWARE! 🚨 This release updates to the newer Gitea SMTP settings format.
If you are using SMTP, you will need to split the old GITEA_MAILER_HOST into separate GITEA_MAILER_ADDR (hostname) and GITEA_MAILER_PORT settings.