1
0
Fork 0
gopoop.org/gitea.yaml

111 lines
4.0 KiB
YAML
Executable File

---
- name: Setup Gitea
hosts: all
vars_files:
- vault.yaml
- vars.yaml
tasks:
- name: Run Gitea Postgres DB
docker_container:
name: "{{ stack_prefix_name }}gitea-db"
recreate: true
restart_policy: unless-stopped
image: postgres:14.2
env:
USER_UID: "1000"
USER_GID: "1000"
POSTGRES_USER: gitea
POSTGRES_DB: gitea
POSTGRES_PASSWORD: "{{ secret_gitea_db_password }}"
networks:
- name: "{{ stack_internal_network }}"
mounts:
- source: "{{ stack_prefix_name }}gitea_db_data"
target: /var/lib/postgresql/data
state: "{{ container_state }}"
- name: Create Gitea Directory
file:
path: ~/gitea
state: directory
recurse: yes
- name: Send Gitea Dockerfile
copy:
src: ./gitea/Dockerfile
dest: ~/gitea/Dockerfile
- name: Build Gitea image
docker_image:
name: gitea
source: build
build:
path: "./gitea"
- name: Run Gitea
docker_container:
name: "{{ stack_prefix_name }}gitea"
recreate: true
restart_policy: always
image: gitea
published_ports:
- "3000:3000"
env:
USER_UID: "1000"
USER_GID: "1000"
"GITEA__APP_NAME": Sean's Code
"GITEA__database__DB_TYPE": postgres
"GITEA__database__HOST": "{{ stack_prefix_name }}gitea-db:5432"
"GITEA__database__NAME": gitea
"GITEA__database__USER": gitea
"GITEA__database__PASSWD": "{{ secret_gitea_db_password }}"
"GITEA__repository__DEFAULT_PUSH_CREATE_PRIVATE": "false"
"GITEA__repository__ENABLE_PUSH_CREATE_USER": "true"
"GITEA__repository__ROOT": /app/gitea/data/gitea-repositories
"GITEA__markup.asciidoc__ENABLED": "true"
"GITEA__markup.asciidoc__FILE_EXTENSIONS": .adoc,.asciidoc
"GITEA__markup.asciidoc__RENDER_COMMAND": "asciidoctor -s -a showtitle -a env-gitea -a env=gitea --out-file=- -"
"GITEA__markup.asciidoc__IS_INPUT_FILE": "false"
"GITEA__server__SSH_DOMAIN": code.sean.wtf
"GITEA__server__DOMAIN": code.sean.wtf
"GITEA__server__HTTP_PORT": "3000"
"GITEA__server__ROOT_URL": https://code.sean.wtf/
"GITEA__server__DISABLE_SSH": "true"
"GITEA__server__LFS_START_SERVER": "true"
"GITEA__server__LFS_CONTENT_PATH": /app/gitea/data/lfs
"GITEA__server__LFS_JWT_SECRET": "{{ secret_gitea_lfs_jwt_secret }}"
"GITEA__server__OFFLINE_MODE": "false"
"GITEA__service__REGISTER_EMAIL_CONFIRM": "false"
"GITEA__service__ENABLE_NOTIFY_MAIL": "false"
"GITEA__service__DISABLE_REGISTRATION": "true"
"GITEA__service__ALLOW_ONLY_EXTERNAL_REGISTRATION": "false"
"GITEA__service__ENABLE_CAPTCHA": "false"
"GITEA__service__REQUIRE_SIGNIN_VIEW": "false"
"GITEA__service__DEFAULT_KEEP_EMAIL_PRIVATE": "true"
"GITEA__service__DEFAULT_ALLOW_CREATE_ORGANIZATION": "true"
"GITEA__service__DEFAULT_ENABLE_TIMETRACKING": "true"
"GITEA__service__NO_REPLY_ADDRESS": noreply.code.sean.wtf
"GITEA__picture__DISABLE_GRAVATAR": "false"
"GITEA__picture__ENABLE_FEDERATED_AVATAR": "true"
"GITEA__openid__ENABLE_OPENID_SIGNIN": "false"
"GITEA__openid__ENABLE_OPENID_SIGNUP": "false"
networks:
- name: "{{ stack_internal_network }}"
- name: "{{ stack_external_network }}"
# May need to open ssh ports for some things. Maybe not.
mounts:
- source: "{{ stack_prefix_name}}gitea_repositories"
target: /app/gitea/data/gitea-repositories
- source: "{{ stack_prefix_name }}gitea_data"
target: /data
- source: /etc/timezone
target: /etc/timezone:ro
type: bind
- source: /etc/localtime
target: /etc/localtime:ro
type: bind
state: "{{ container_state }}"