Compare commits

...

4 Commits

Author SHA1 Message Date
1025b8f076 Separater Handler für den HTTP Response Check
Some checks failed
ansible-lint / Ansible Lint (push) Failing after 13s
2023-05-01 00:02:56 +00:00
4f1c51475c Stoppe Gitea nur, wenn eine docker-compose.yaml existiert 2023-04-30 23:59:58 +00:00
d8a29adb56 Behalte File-Ownership beim kopieren 2023-04-30 23:56:59 +00:00
124456ae07 Verschiebe Backup Tasks 2023-04-30 23:48:07 +00:00
3 changed files with 44 additions and 26 deletions

28
handlers/backup.yaml Normal file
View File

@ -0,0 +1,28 @@
- name: Get stats of docker-compose.yaml
ansible.builtin.stat:
path: /opt/gitea/docker-compose.yaml
register: docker_compose_stat
listen:
- Backup Gitea
- name: Stop Gitea for Backup
community.docker.docker_compose:
project_src: /opt/gitea
state: present
stopped: true
register: docker_compose
listen:
- Backup Gitea
notify:
- Ensure Gitea is running
when: docker_compose_stat.stat.exists is defined and docker_compose_stat.stat.exists
- name: Backup Gitea Directory
ansible.builtin.synchronize:
src: /opt/gitea/
dest: "/opt/gitea.backup@{{ lookup('pipe', 'date --utc --iso-8601=seconds') }}"
recursive: true
delegate_to: "{{ inventory_hostname }}"
listen:
- Backup Gitea
register: backup

View File

@ -1,39 +1,29 @@
- name: Stop Gitea for Backup - name: Import Backup Handler
community.docker.docker_compose: ansible.builtin.import_tasks:
project_src: /opt/gitea file: backup.yaml
state: present
stopped: true
ignore_errors: true
listen:
- Backup Gitea
notify:
- Ensure Gitea is running
- name: Backup Gitea Directory
ansible.builtin.copy:
src: /opt/gitea/
dest: "/opt/gitea.backup@{{ lookup('pipe', 'date --utc --iso-8601=seconds') }}"
mode: preserve
remote_src: true
directory_mode: true
listen:
- Backup Gitea
register: backup
- name: Ensure Gitea is restarted - name: Ensure Gitea is restarted
community.docker.docker_compose: community.docker.docker_compose:
project_src: /opt/gitea project_src: /opt/gitea
restarted: true restarted: true
register: docker_compose
- name: Ensure Gitea is running - name: Ensure Gitea is running
community.docker.docker_compose: community.docker.docker_compose:
project_src: /opt/gitea project_src: /opt/gitea
register: docker_compose
- name: Check Gitea HTTP Response - name: Get Gitea HTTP Response
ansible.builtin.uri: ansible.builtin.uri:
url: "https://{{ gitea.hostname }}.{{ gitea.domain }}" url: "https://{{ gitea.hostname }}.{{ gitea.domain }}"
register: _result register: gitea_http_response
until: _result.status == 200 failed_when: 400 <= gitea_http_response.status < 500
- name: Wait until Gitea is up
ansible.builtin.uri:
url: "https://{{ gitea.hostname }}.{{ gitea.domain }}"
register: gitea_http_response
until: gitea_http_response.status == 200
retries: 30 retries: 30
delay: 2 delay: 2

View File

@ -72,7 +72,7 @@
mode: "600" mode: "600"
notify: notify:
- Ensure Gitea is restarted - Ensure Gitea is restarted
- Check Gitea HTTP Response - Wait until Gitea is up
- name: Upload docker-compose.yaml - name: Upload docker-compose.yaml
ansible.builtin.template: ansible.builtin.template:
@ -83,4 +83,4 @@
notify: notify:
- Output Docker Compose State - Output Docker Compose State
- Ensure Gitea is restarted - Ensure Gitea is restarted
- Check Gitea HTTP Response - Wait until Gitea is up