From 399f5c7a6a7b78e7b5ffa907116dabd567ea6fd8 Mon Sep 17 00:00:00 2001 From: Amritanshu Date: Thu, 27 Aug 2026 02:42:47 +0000 Subject: [PATCH] Gitea updated for the right host and to work with caddy. --- gitea/files/nginx.conf.j2 | 19 ------------------- gitea/playbook.yml | 5 +++-- gitea/roles/caddy/handlers/main.yaml | 5 +++++ gitea/roles/caddy/tasks/main.yaml | 22 ++++++++++++++++++++++ gitea/roles/gitea/tasks/main.yaml | 6 ++++-- gitea/roles/network/tasks/main.yaml | 8 ++++++++ gitea/roles/nginx/defaults/main.yaml | 2 -- gitea/roles/nginx/handlers/main.yaml | 6 ------ gitea/roles/nginx/tasks/main.yaml | 24 ------------------------ gitea/vars/default.yml | 9 +++++++++ 10 files changed, 51 insertions(+), 55 deletions(-) delete mode 100644 gitea/files/nginx.conf.j2 create mode 100644 gitea/roles/caddy/handlers/main.yaml create mode 100644 gitea/roles/caddy/tasks/main.yaml create mode 100644 gitea/roles/network/tasks/main.yaml delete mode 100644 gitea/roles/nginx/defaults/main.yaml delete mode 100644 gitea/roles/nginx/handlers/main.yaml delete mode 100644 gitea/roles/nginx/tasks/main.yaml diff --git a/gitea/files/nginx.conf.j2 b/gitea/files/nginx.conf.j2 deleted file mode 100644 index b49ac7f..0000000 --- a/gitea/files/nginx.conf.j2 +++ /dev/null @@ -1,19 +0,0 @@ -server { - - listen 80; - server_name {{ http_host }}; - -# location /_/static { - -# alias /path/to/gitea/public; -# } - - location / { - proxy_pass http://localhost:3000; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - } -} - diff --git a/gitea/playbook.yml b/gitea/playbook.yml index cd23cc2..bde5914 100755 --- a/gitea/playbook.yml +++ b/gitea/playbook.yml @@ -2,7 +2,7 @@ # DO Community Playbooks: Docker ################################################# --- -- hosts: gondor +- hosts: monoco become: true vars_files: - vars/default.yml @@ -11,5 +11,6 @@ - user - passthrough - sshkey + - network - gitea - - nginx + - caddy diff --git a/gitea/roles/caddy/handlers/main.yaml b/gitea/roles/caddy/handlers/main.yaml new file mode 100644 index 0000000..bc77d4f --- /dev/null +++ b/gitea/roles/caddy/handlers/main.yaml @@ -0,0 +1,5 @@ +--- +# Handlers for Caddy role +- name: Reload Caddy configuration + ansible.builtin.command: "docker exec -w /etc/caddy {{ caddy_container }} caddy reload" + listen: "Reload Caddy" diff --git a/gitea/roles/caddy/tasks/main.yaml b/gitea/roles/caddy/tasks/main.yaml new file mode 100644 index 0000000..6c99a6a --- /dev/null +++ b/gitea/roles/caddy/tasks/main.yaml @@ -0,0 +1,22 @@ +--- +- name: Read current Caddyfile + ansible.builtin.slurp: + path: "{{ caddyfile_path }}" + register: caddyfile_raw + +- name: Decode Caddyfile content + set_fact: + caddyfile_content: "{{ caddyfile_raw['content'] | b64decode }}" + +- name: Check if snippet already exists + set_fact: + snippet_present: "{{ snippet_block in caddyfile_content }}" + +- name: Add snippet if missing + ansible.builtin.blockinfile: + path: "{{ caddyfile_path }}" + marker: "# {mark} Ansible managed Caddy snippet for {{ http_host }}" + block: "{{ snippet_block }}" + create: yes + when: not snippet_present + notify: "Reload Caddy" diff --git a/gitea/roles/gitea/tasks/main.yaml b/gitea/roles/gitea/tasks/main.yaml index 1fe8163..e89700d 100644 --- a/gitea/roles/gitea/tasks/main.yaml +++ b/gitea/roles/gitea/tasks/main.yaml @@ -22,8 +22,8 @@ memory: "512M" memory_swap: "512M" env: - USER_UID: "{{ getent_passwd[user][1] }}" - USER_GID: "{{ getent_passwd[user][2] }}" + USER_UID: "{{ ansible_facts['getent_passwd'][user][1] }}" + USER_GID: "{{ ansible_facts['getent_passwd'][user][2] }}" published_ports: - "127.0.0.1:3000:3000" - "127.0.0.1:2222:22" @@ -32,3 +32,5 @@ - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro - "/home/{{ user }}/.ssh/:/data/git/.ssh" + networks: + - name: "{{ docker_network }}" diff --git a/gitea/roles/network/tasks/main.yaml b/gitea/roles/network/tasks/main.yaml new file mode 100644 index 0000000..6188027 --- /dev/null +++ b/gitea/roles/network/tasks/main.yaml @@ -0,0 +1,8 @@ +--- +- name: "Ensure {{ container_name }} Docker network exists" + docker_network: + name: "{{ docker_network }}" + state: present + connected: + - "{{ caddy_container }}" + appends: yes diff --git a/gitea/roles/nginx/defaults/main.yaml b/gitea/roles/nginx/defaults/main.yaml deleted file mode 100644 index 85c5e6d..0000000 --- a/gitea/roles/nginx/defaults/main.yaml +++ /dev/null @@ -1,2 +0,0 @@ ---- -# Default variables for Nginx role diff --git a/gitea/roles/nginx/handlers/main.yaml b/gitea/roles/nginx/handlers/main.yaml deleted file mode 100644 index 622fd36..0000000 --- a/gitea/roles/nginx/handlers/main.yaml +++ /dev/null @@ -1,6 +0,0 @@ ---- -# Handlers for Nginx role -- name: Reload Nginx - service: - name: nginx - state: reloaded diff --git a/gitea/roles/nginx/tasks/main.yaml b/gitea/roles/nginx/tasks/main.yaml deleted file mode 100644 index 4441fe7..0000000 --- a/gitea/roles/nginx/tasks/main.yaml +++ /dev/null @@ -1,24 +0,0 @@ ---- -# Tasks for Nginx role -- name: Check if Nginx conf file exists - stat: - path: "/etc/nginx/sites-available/{{ http_conf }}" - register: status - -- name: No need to reload Nginx - debug: - msg: "No need to reload Nginx as sites-available entries have already been created" - -- name: Set Nginx conf file - when: status.stat.exists == false - template: - src: "files/nginx.conf.j2" - dest: "/etc/nginx/sites-available/{{ http_conf }}" - -- name: Enable new site - when: status.stat.exists == false - file: - src: "/etc/nginx/sites-available/{{ http_conf }}" - dest: "/etc/nginx/sites-enabled/{{ http_conf }}" - state: link - notify: Reload Nginx diff --git a/gitea/vars/default.yml b/gitea/vars/default.yml index d75ddc7..79944a4 100644 --- a/gitea/vars/default.yml +++ b/gitea/vars/default.yml @@ -6,4 +6,13 @@ http_url: "https://git.tanshu.com" container_name: gitea container_image: gitea/gitea:latest +docker_network: "{{ container_name }}_net" +caddy_container: caddy + +caddyfile_path: /var/lib/caddy/conf/Caddyfile +snippet_block: | + {{ http_host }} { + reverse_proxy {{ container_name }}:3000 + } + user: 'git'