- Move all roles from playbooks/roles/ to roles/ - Update roles_path in ansible.cfg - Add cast user to common role - Create standalone podman role - Add semaphore role with Podman + Quadlet support
67 lines
2.7 KiB
YAML
67 lines
2.7 KiB
YAML
---
|
|
# ------------------------------------------------------------------------------
|
|
# FILE: ansible/playbooks/roles/gitea/tasks/main.yml
|
|
# ------------------------------------------------------------------------------
|
|
|
|
# ── Directories ────────────────────────────────────────────────────────────────
|
|
|
|
- name: Create Gitea compose directory
|
|
ansible.builtin.file:
|
|
path: "{{ gitea_compose_dir }}"
|
|
state: directory
|
|
owner: root
|
|
group: root
|
|
mode: "0755"
|
|
|
|
# ── Compose & env ──────────────────────────────────────────────────────────────
|
|
|
|
- name: Deploy Gitea compose file from boilerplate
|
|
ansible.builtin.copy:
|
|
src: "{{ playbook_dir }}/../../boilerplates/gitea/compose.yaml"
|
|
dest: "{{ gitea_compose_dir }}/compose.yaml"
|
|
owner: root
|
|
group: root
|
|
mode: "0644"
|
|
notify: restart gitea
|
|
|
|
- name: Deploy .env file with secrets from vault
|
|
ansible.builtin.template:
|
|
src: env.j2
|
|
dest: "{{ gitea_compose_dir }}/.env"
|
|
owner: root
|
|
group: root
|
|
mode: "0600"
|
|
notify: restart gitea
|
|
|
|
# ── Compose stack ──────────────────────────────────────────────────────────────
|
|
|
|
- name: Start Gitea stack
|
|
community.docker.docker_compose_v2:
|
|
project_src: "{{ gitea_compose_dir }}"
|
|
state: present
|
|
recreate: always
|
|
|
|
# ── Traefik route ──────────────────────────────────────────────────────────────
|
|
|
|
# - name: Deploy Traefik dynamic config for Gitea
|
|
# ansible.builtin.copy:
|
|
# src: "{{ playbook_dir }}/../../boilerplates/traefik/dynamic/gitea.yml"
|
|
# dest: "{{ traefik_dynamic_config_dir }}/gitea.yml"
|
|
# owner: root
|
|
# group: root
|
|
# mode: "0644"
|
|
# delegate_to: localhost
|
|
|
|
# ── DNS ────────────────────────────────────────────────────────────────────────
|
|
|
|
# - name: Create DNS CNAME for Gitea
|
|
# ansible.builtin.include_role:
|
|
# name: add_service_route
|
|
# vars:
|
|
# service_name: "{{ gitea_cname_name }}"
|
|
# service_domain: "{{ gitea_cname_domain }}"
|
|
# target_host: "{{ gitea_cname_target }}"
|
|
- name: Configure Authentik OIDC source
|
|
ansible.builtin.import_tasks: configure_oidc.yml
|
|
when: gitea_oidc_enabled | bool
|
|
tags: oidc |