--- - name: Create Gitea directory ansible.builtin.file: path: "{{ gitea_dir }}" state: directory owner: root group: root mode: "0755" tags: [gitea] - name: Deploy Gitea Compose project ansible.builtin.include_role: name: compose_project vars: compose_project_dir: "{{ gitea_dir }}" compose_project_directories: - "{{ gitea_dir }}" compose_project_env_template_src: "{{ playbook_dir }}/../roles/gitea/templates/env.j2" compose_project_compose_template_src: "{{ playbook_dir }}/../roles/gitea/templates/compose.yaml.j2" compose_project_override_template_src: "{{ playbook_dir }}/../roles/gitea/templates/compose.override.yaml.j2" compose_project_create_proxy_network: "{{ gitea_routing_mode == 'traefik' }}" compose_project_proxy_network: "{{ gitea_traefik_network }}" compose_project_firewall_ports: "{{ gitea_tcp_ports }}" compose_project_firewall_enabled: "{{ gitea_routing_mode in ['host', 'traefik_file'] }}" tags: [gitea] - name: Allow Gitea SSH port when published behind Traefik community.general.ufw: rule: allow port: "{{ gitea_ssh_port }}" proto: tcp when: - gitea_routing_mode == "traefik" - gitea_publish_ssh | bool tags: [gitea, firewall]