Compare commits
42 Commits
renovate/m
...
cors-heade
Author | SHA1 | Date | |
---|---|---|---|
fabd33037a | |||
ee34764179 | |||
d0488d3a61 | |||
7009473b38 | |||
0547336698 | |||
632364fccf | |||
1aa71afcf6 | |||
761ce25ccb | |||
f6f9590cfe | |||
208d411f9c | |||
ea7fa4e84c | |||
e33bde6f4d | |||
8ccf9ce883 | |||
969ce90b8a | |||
945602a70d | |||
31d2d2b0c2 | |||
9f61417eca | |||
51d14ce545 | |||
d81b97e8a2 | |||
0cae142936 | |||
6956f143e9 | |||
903bbfd108 | |||
5ba392d9a3 | |||
73b993a654 | |||
ba05cf5557 | |||
dc8387de02 | |||
b8cf1bed7b | |||
13997ed671 | |||
590c3af6f9 | |||
32b158d6fc | |||
f29e86bc10 | |||
2550b92b7a | |||
4e97cae1fd | |||
451cb36d5d | |||
99cde9cec3 | |||
036f070dc4 | |||
c4154c8673 | |||
bff964064c | |||
7c92503773 | |||
0f43efe952 | |||
14fa475a5a | |||
e8c65515b2 |
19
.drone.yml
19
.drone.yml
@ -12,9 +12,9 @@ steps:
|
|||||||
deploy_key:
|
deploy_key:
|
||||||
from_secret: drone_ssh_swarm_test
|
from_secret: drone_ssh_swarm_test
|
||||||
environment:
|
environment:
|
||||||
|
APP_INI_VERSION: v1
|
||||||
|
DOCKER_SETUP_SH_VERSION: v1
|
||||||
DOMAIN: gitea.swarm-test.autonomic.zone
|
DOMAIN: gitea.swarm-test.autonomic.zone
|
||||||
STACK_NAME: gitea
|
|
||||||
LETS_ENCRYPT_ENV: production
|
|
||||||
GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATION: true
|
GITEA_ALLOW_ONLY_EXTERNAL_REGISTRATION: true
|
||||||
GITEA_APP_NAME: Git with solidaritea
|
GITEA_APP_NAME: Git with solidaritea
|
||||||
GITEA_AUTO_WATCH_NEW_REPOS: false
|
GITEA_AUTO_WATCH_NEW_REPOS: false
|
||||||
@ -23,14 +23,25 @@ steps:
|
|||||||
GITEA_ENABLE_NOTIFY_MAIL: false
|
GITEA_ENABLE_NOTIFY_MAIL: false
|
||||||
GITEA_ENABLE_OPENID_SIGNIN: true
|
GITEA_ENABLE_OPENID_SIGNIN: true
|
||||||
GITEA_ENABLE_OPENID_SIGNUP: true
|
GITEA_ENABLE_OPENID_SIGNUP: true
|
||||||
GITEA_SSH_PORT: 2222
|
|
||||||
GITEA_SSH_ENABLED: 1
|
GITEA_SSH_ENABLED: 1
|
||||||
APP_INI_VERSION: v1
|
GITEA_SSH_PORT: 2222
|
||||||
|
LETS_ENCRYPT_ENV: production
|
||||||
SECRET_DB_PASSWORD_VERSION: v1
|
SECRET_DB_PASSWORD_VERSION: v1
|
||||||
SECRET_DB_ROOT_PASSWORD_VERSION: v1
|
SECRET_DB_ROOT_PASSWORD_VERSION: v1
|
||||||
SECRET_INTERNAL_TOKEN_VERSION: v1
|
SECRET_INTERNAL_TOKEN_VERSION: v1
|
||||||
SECRET_JWT_SECRET_VERSION: v1
|
SECRET_JWT_SECRET_VERSION: v1
|
||||||
SECRET_SECRET_KEY_VERSION: v1
|
SECRET_SECRET_KEY_VERSION: v1
|
||||||
|
STACK_NAME: gitea
|
||||||
trigger:
|
trigger:
|
||||||
branch:
|
branch:
|
||||||
- master
|
- master
|
||||||
|
---
|
||||||
|
kind: pipeline
|
||||||
|
name: recipe release
|
||||||
|
steps:
|
||||||
|
- name: release a new version
|
||||||
|
image: thecoopcloud/drone-abra:latest
|
||||||
|
settings:
|
||||||
|
command: recipe gitea release
|
||||||
|
deploy_key:
|
||||||
|
from_secret: abra_bot_deploy_key
|
||||||
|
@ -24,6 +24,9 @@ SECRET_DB_ROOT_PASSWORD_VERSION=v1
|
|||||||
SECRET_JWT_SECRET_VERSION=v1 # length=43
|
SECRET_JWT_SECRET_VERSION=v1 # length=43
|
||||||
SECRET_SECRET_KEY_VERSION=v1 # length=64
|
SECRET_SECRET_KEY_VERSION=v1 # length=64
|
||||||
|
|
||||||
|
GITEA_CORS_ENABLED=0
|
||||||
|
# GITEA_CORS_DOMAIN=https://example.org
|
||||||
|
|
||||||
# SMTP Mailer
|
# SMTP Mailer
|
||||||
# COMPOSE_FILE="compose.yml:compose.smtp.yml"
|
# COMPOSE_FILE="compose.yml:compose.smtp.yml"
|
||||||
# GITEA_SMTP_MAILER_ENABLED=1
|
# GITEA_SMTP_MAILER_ENABLED=1
|
||||||
|
18
README.md
18
README.md
@ -1,16 +1,16 @@
|
|||||||
# Gitea
|
# Gitea
|
||||||
|
|
||||||
[](https://drone.autonomic.zone/coop-cloud/gitea)
|
[](https://drone.coopcloud.tech/coop-cloud/gitea)
|
||||||
|
|
||||||
<!-- metadata -->
|
<!-- metadata -->
|
||||||
* **Category**: Development
|
- **Category**: Development
|
||||||
* **Status**: ❷💛
|
* **Status**: ❶💚
|
||||||
* **Image**: [`gitea/gitea`](https://hub.docker.com/gitea/gitea), ❶💚, upstream
|
- **Image**: [`gitea/gitea`](https://hub.docker.com/gitea/gitea), ❶💚, upstream
|
||||||
* **Healthcheck**: Yes
|
- **Healthcheck**: Yes
|
||||||
* **Backups**: No
|
* **Backups**: Yes
|
||||||
* **Email**: ?
|
- **Email**: ?
|
||||||
* **Tests**: ❷💛
|
- **Tests**: ❷💛
|
||||||
* **SSO**: ❶💚 (OAuth)
|
- **SSO**: ❶💚 (OAuth)
|
||||||
<!-- endmetadata -->
|
<!-- endmetadata -->
|
||||||
|
|
||||||
## Basic usage
|
## Basic usage
|
||||||
|
15
abra.sh
15
abra.sh
@ -1 +1,14 @@
|
|||||||
export APP_INI_VERSION=v5
|
export APP_INI_VERSION=v8
|
||||||
|
export DOCKER_SETUP_SH_VERSION=v1
|
||||||
|
|
||||||
|
abra_backup_app() {
|
||||||
|
_abra_backup_dir "app:/var/lib/gitea"
|
||||||
|
}
|
||||||
|
|
||||||
|
abra_backup_db() {
|
||||||
|
_abra_backup_mysql "db" "gitea"
|
||||||
|
}
|
||||||
|
|
||||||
|
abra_backup() {
|
||||||
|
abra_backup_app && abra_backup_db
|
||||||
|
}
|
||||||
|
11
app.ini.tmpl
11
app.ini.tmpl
@ -24,10 +24,8 @@ DEFAULT_BRANCH = main
|
|||||||
STARTUP_TIMEOUT = 0
|
STARTUP_TIMEOUT = 0
|
||||||
|
|
||||||
[server]
|
[server]
|
||||||
APP_DATA_PATH = /data/gitea
|
|
||||||
DOMAIN = {{ env "GITEA_DOMAIN" }}
|
DOMAIN = {{ env "GITEA_DOMAIN" }}
|
||||||
LANDING_PAGE = organizations
|
LANDING_PAGE = organizations
|
||||||
LFS_CONTENT_PATH = /data/gitea/lfs
|
|
||||||
ROOT_URL = https://%(DOMAIN)s/
|
ROOT_URL = https://%(DOMAIN)s/
|
||||||
SSH_DOMAIN = {{ env "GITEA_DOMAIN" }}
|
SSH_DOMAIN = {{ env "GITEA_DOMAIN" }}
|
||||||
SSH_LISTEN_PORT = {{ env "GITEA_SSH_PORT" }}
|
SSH_LISTEN_PORT = {{ env "GITEA_SSH_PORT" }}
|
||||||
@ -37,6 +35,8 @@ START_SSH_SERVER = true
|
|||||||
[security]
|
[security]
|
||||||
INSTALL_LOCK = true
|
INSTALL_LOCK = true
|
||||||
INTERNAL_TOKEN = {{ secret "internal_token" }}
|
INTERNAL_TOKEN = {{ secret "internal_token" }}
|
||||||
|
REVERSE_PROXY_LIMIT = 1
|
||||||
|
REVERSE_PROXY_TRUSTED_PROXIES = *
|
||||||
SECRET_KEY = {{ secret "secret_key" }}
|
SECRET_KEY = {{ secret "secret_key" }}
|
||||||
|
|
||||||
[oauth2]
|
[oauth2]
|
||||||
@ -65,3 +65,10 @@ REPOSITORY_AVATAR_UPLOAD_PATH = /data/gitea/repo-avatars
|
|||||||
|
|
||||||
[attachment]
|
[attachment]
|
||||||
PATH = /data/gitea/attachments
|
PATH = /data/gitea/attachments
|
||||||
|
|
||||||
|
{{ if eq (env "GITEA_CORS_ENABLED") "1" }}
|
||||||
|
[cors]
|
||||||
|
ENABLED=true
|
||||||
|
SCHEME=https
|
||||||
|
ALLOW_DOMAIN={{ env "GITEA_CORS_DOMAIN" }}
|
||||||
|
{{ end }}
|
||||||
|
@ -1,4 +1,6 @@
|
|||||||
|
---
|
||||||
version: "3.8"
|
version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
environment:
|
environment:
|
||||||
@ -7,7 +9,8 @@ services:
|
|||||||
- GITEA_MAILER_USER
|
- GITEA_MAILER_USER
|
||||||
secrets:
|
secrets:
|
||||||
- smtp_password
|
- smtp_password
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
smtp_passord:
|
smtp_password:
|
||||||
name: ${STACK_NAME}_smtp_password_${SECRET_SMTP_PASSWORD_VERSION}
|
name: ${STACK_NAME}_smtp_password_${SECRET_SMTP_PASSWORD_VERSION}
|
||||||
external: true
|
external: true
|
||||||
|
31
compose.yml
31
compose.yml
@ -1,10 +1,15 @@
|
|||||||
|
---
|
||||||
version: "3.8"
|
version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: "gitea/gitea:1.14.1-rootless"
|
image: "gitea/gitea:1.15.6-rootless"
|
||||||
configs:
|
configs:
|
||||||
- source: app_ini
|
- source: app_ini
|
||||||
target: /etc/gitea/app.ini
|
target: /etc/gitea/app.ini
|
||||||
|
- source: docker_setup_sh
|
||||||
|
target: /usr/local/bin/docker-setup.sh
|
||||||
|
mode: 0555
|
||||||
secrets:
|
secrets:
|
||||||
- db_password
|
- db_password
|
||||||
- internal_token
|
- internal_token
|
||||||
@ -23,7 +28,10 @@ services:
|
|||||||
- GITEA_ENABLE_NOTIFY_MAIL
|
- GITEA_ENABLE_NOTIFY_MAIL
|
||||||
- GITEA_ENABLE_OPENID_SIGNIN
|
- GITEA_ENABLE_OPENID_SIGNIN
|
||||||
- GITEA_ENABLE_OPENID_SIGNUP
|
- GITEA_ENABLE_OPENID_SIGNUP
|
||||||
|
- GITEA_SMTP_MAILER_ENABLED
|
||||||
- GITEA_SSH_PORT
|
- GITEA_SSH_PORT
|
||||||
|
- GITEA_CORS_ENABLED
|
||||||
|
- GITEA_CORS_DOMAIN
|
||||||
volumes:
|
volumes:
|
||||||
- data:/var/lib/gitea
|
- data:/var/lib/gitea
|
||||||
- config:/etc/gitea
|
- config:/etc/gitea
|
||||||
@ -32,12 +40,6 @@ services:
|
|||||||
networks:
|
networks:
|
||||||
- proxy
|
- proxy
|
||||||
- internal
|
- internal
|
||||||
healthcheck:
|
|
||||||
test: ["CMD", "curl", "-f", "http://localhost:3000"]
|
|
||||||
interval: 15s
|
|
||||||
timeout: 10s
|
|
||||||
retries: 10
|
|
||||||
start_period: 30s
|
|
||||||
deploy:
|
deploy:
|
||||||
update_config:
|
update_config:
|
||||||
failure_action: rollback
|
failure_action: rollback
|
||||||
@ -51,9 +53,10 @@ services:
|
|||||||
- "traefik.tcp.routers.${STACK_NAME}-ssh.rule=HostSNI(`*`)"
|
- "traefik.tcp.routers.${STACK_NAME}-ssh.rule=HostSNI(`*`)"
|
||||||
- "traefik.tcp.routers.${STACK_NAME}-ssh.entrypoints=gitea-ssh"
|
- "traefik.tcp.routers.${STACK_NAME}-ssh.entrypoints=gitea-ssh"
|
||||||
- "traefik.tcp.services.${STACK_NAME}-ssh.loadbalancer.server.port=${GITEA_SSH_PORT}"
|
- "traefik.tcp.services.${STACK_NAME}-ssh.loadbalancer.server.port=${GITEA_SSH_PORT}"
|
||||||
- coop-cloud.${STACK_NAME}.app.version=1.14.0-327bfb3f
|
- coop-cloud.${STACK_NAME}.version=1.1.2+1.15.6-rootless
|
||||||
|
|
||||||
db:
|
db:
|
||||||
image: "mariadb:10.5"
|
image: "mariadb:10.6"
|
||||||
command: |
|
command: |
|
||||||
mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
|
||||||
environment:
|
environment:
|
||||||
@ -68,17 +71,22 @@ services:
|
|||||||
- "mariadb:/var/lib/mysql"
|
- "mariadb:/var/lib/mysql"
|
||||||
networks:
|
networks:
|
||||||
- internal
|
- internal
|
||||||
deploy:
|
|
||||||
labels: ["coop-cloud.${STACK_NAME}.db.version=10.5-9c681cef"]
|
|
||||||
networks:
|
networks:
|
||||||
internal:
|
internal:
|
||||||
proxy:
|
proxy:
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
configs:
|
configs:
|
||||||
app_ini:
|
app_ini:
|
||||||
name: ${STACK_NAME}_app_ini_${APP_INI_VERSION}
|
name: ${STACK_NAME}_app_ini_${APP_INI_VERSION}
|
||||||
file: app.ini.tmpl
|
file: app.ini.tmpl
|
||||||
template_driver: golang
|
template_driver: golang
|
||||||
|
docker_setup_sh:
|
||||||
|
name: ${STACK_NAME}_docker_setup_sh_${DOCKER_SETUP_SH_VERSION}
|
||||||
|
file: docker-setup.sh.tmpl
|
||||||
|
template_driver: golang
|
||||||
|
|
||||||
secrets:
|
secrets:
|
||||||
db_password:
|
db_password:
|
||||||
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
||||||
@ -95,6 +103,7 @@ secrets:
|
|||||||
secret_key:
|
secret_key:
|
||||||
name: ${STACK_NAME}_secret_key_${SECRET_SECRET_KEY_VERSION}
|
name: ${STACK_NAME}_secret_key_${SECRET_SECRET_KEY_VERSION}
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
volumes:
|
volumes:
|
||||||
data:
|
data:
|
||||||
config:
|
config:
|
||||||
|
15
docker-setup.sh.tmpl
Normal file
15
docker-setup.sh.tmpl
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# modified version of https://github.com/go-gitea/gitea/blob/d7dbe4feebac7805a4ca184f0989f58de8063d96/docker/rootless/usr/local/bin/docker-setup.sh
|
||||||
|
# also see https://github.com/go-gitea/gitea/pull/14762#issuecomment-829224656
|
||||||
|
|
||||||
|
# Prepare git folder
|
||||||
|
mkdir -p ${HOME} && chmod 0700 ${HOME}
|
||||||
|
if [ ! -w ${HOME} ]; then echo "${HOME} is not writable"; exit 1; fi
|
||||||
|
|
||||||
|
# Prepare custom folder
|
||||||
|
mkdir -p ${GITEA_CUSTOM} && chmod 0500 ${GITEA_CUSTOM}
|
||||||
|
|
||||||
|
# Prepare temp folder
|
||||||
|
mkdir -p ${GITEA_TEMP} && chmod 0700 ${GITEA_TEMP}
|
||||||
|
if [ ! -w ${GITEA_TEMP} ]; then echo "${GITEA_TEMP} is not writable"; exit 1; fi
|
@ -1,6 +0,0 @@
|
|||||||
{
|
|
||||||
"$schema": "https://docs.renovatebot.com/renovate-schema.json",
|
|
||||||
"extends": [
|
|
||||||
"config:base"
|
|
||||||
]
|
|
||||||
}
|
|
Reference in New Issue
Block a user