[Add backup full gitea + docker]
This commit is contained in:
@@ -1,71 +0,0 @@
|
||||
- hosts: tower
|
||||
vars:
|
||||
dockerapps_path: /opt/dockerapps
|
||||
gitea_conf: /appdata/gitea/gitea/
|
||||
#backup: /backup/gitea
|
||||
|
||||
gitea_db: /appdata/gitea/gitea-db/gitea-db-pg.sql
|
||||
# become: true
|
||||
gather_facts: false
|
||||
tasks:
|
||||
|
||||
- ansible.builtin.file:
|
||||
path: "{{ dockerapps_path }}/backup/gitea"
|
||||
state: directory
|
||||
|
||||
# mode: '0755'
|
||||
#/opt/dockerapps/appdata/gitea/gitea/gitea-dump-*.zip
|
||||
- name: DUMP gitea conf
|
||||
community.docker.docker_container_exec:
|
||||
container: gitea
|
||||
command: gitea dump -c /data/gitea/conf/app.ini
|
||||
user: git
|
||||
chdir: /data
|
||||
|
||||
- ansible.builtin.find:
|
||||
paths: "{{ dockerapps_path }}{{ gitea_conf }}"
|
||||
patterns: 'gitea-dump-*.zip'
|
||||
register: result_gitea_conf
|
||||
|
||||
- name: Print stdout
|
||||
ansible.builtin.debug:
|
||||
var: result_gitea_conf
|
||||
|
||||
- name: Copy file with owner and permissions
|
||||
ansible.builtin.copy:
|
||||
src: "{{ item.path }}"
|
||||
dest: "{{ dockerapps_path }}/backup/gitea/{{ item.path.split('/')[-1]}}"
|
||||
loop: "{{ result_gitea_conf.files }}"
|
||||
# owner: foo
|
||||
# group: foo
|
||||
# mode: '0644'
|
||||
|
||||
|
||||
#! need root
|
||||
# root@scaleway:/opt/dockerapps/appdata/gitea/gitea-db/gitea-db-pg.sql
|
||||
|
||||
- name: PG_DUMP postgresql db
|
||||
community.docker.docker_container_exec:
|
||||
container: gitea-db
|
||||
command: pg_dump -U root gitea -f /var/lib/postgresql/data/gitea-db-pg.sql
|
||||
# chdir: "{{ dockerapps_path }}"
|
||||
register: result_gitea_db
|
||||
|
||||
- ansible.builtin.debug:
|
||||
var: result_gitea_db.stdout
|
||||
|
||||
- name: Copy file with owner and permissions
|
||||
become: true
|
||||
ansible.builtin.copy:
|
||||
src: "{{ dockerapps_path }}{{ gitea_db }}"
|
||||
dest: "{{ dockerapps_path }}/backup/gitea/{{ gitea_db.split('/')[-1] }}"
|
||||
# owner: "{{ }}"
|
||||
# group: foo
|
||||
# mode: '0644'
|
||||
|
||||
|
||||
# docker exec -u git -w /data/ gitea gitea dump -c /data/gitea/conf/app.ini
|
||||
# mv /opt/dockerapps/appdata/gitea/gitea/gitea-dump-*.zip /opt/dockerapps/backup/
|
||||
# docker exec gitea-db pg_dump -U root gitea > gitea-db-pg.sql
|
||||
# mv ./gitea-db-pg.sql /opt/dockerapps/backup/
|
||||
# find /opt/dockerapps/backup/ -mtime +7 -exec rm {} \;
|
||||
103
backup.yml
103
backup.yml
@@ -173,102 +173,11 @@
|
||||
dest: "{{ dockerapps_path }}/backup/gitea/{{ gitea_db.split('/')[-1] }}"
|
||||
remote_src: true
|
||||
|
||||
# curl -u "$username:$password" -H "Title: HTTPS Certificats" -H "ta:closed_lock_with_key" -d "*.jingoh.fr Less than 20 days" https://alert.jingoh.fr/scaleway
|
||||
|
||||
# when: cert.not_after - ansible_date_time.iso8601_basic >
|
||||
# - name: NTFY when docker compose changed
|
||||
# uri:
|
||||
# url: "https://alert.jingoh.fr/scaleway"
|
||||
# method: POST
|
||||
# headers:
|
||||
# user: "{{ username }}"
|
||||
# password: "{{ password }}"
|
||||
# Title: "docker-compose changed"
|
||||
# ta: "file_folder"
|
||||
# body: "Docker compose backup in gitea"
|
||||
# status_code: 200
|
||||
# tags: test1
|
||||
# delegate_to: localhost
|
||||
# when: fetch_files_backup.changed is true
|
||||
# when:
|
||||
# - "{{ ((cert.not_after | to_datetime('%Y%m%d%H%M%SZ') ) - (ansible_date_time.date | to_datetime('%Y-%m-%d') )).days < 10 }}"
|
||||
|
||||
|
||||
|
||||
|
||||
# - name: Exécuter le conteneur Docker
|
||||
# community.docker.docker_container:
|
||||
# name: vaultwarden-backup
|
||||
# image: bruceforce/vaultwarden-backup
|
||||
# state: started
|
||||
# auto_remove: true
|
||||
# command: manual
|
||||
# volumes_from:
|
||||
# - vault
|
||||
# env:
|
||||
# UID: "0"
|
||||
# BACKUP_DIR: "/data/backup"
|
||||
# TIMESTAMP: "true"
|
||||
# ENCRYPTION_PASSWORD: "{{ vault_pass }}"
|
||||
# # tags: dock
|
||||
# when: inventory_hostname in groups['controller']
|
||||
|
||||
# - name: Supprimer les fichiers de sauvegarde de Vaultwarden plus anciens que 7 jours
|
||||
# find:
|
||||
# paths: /opt/dockerapps/appdata/vaultwarden/backup/
|
||||
# age: 7d
|
||||
# register: files_to_remove
|
||||
# become: true
|
||||
# when: inventory_hostname in groups['controller']
|
||||
# tags: dock
|
||||
|
||||
# - name: Supprimer les fichiers plus anciens que 7 jours
|
||||
# file:
|
||||
# path: "{{ item.path }}"
|
||||
# state: absent
|
||||
# loop: "{{ files_to_remove.files }}"
|
||||
# tags: dock
|
||||
# become: true
|
||||
|
||||
# - name: Backup vault
|
||||
# uri:
|
||||
# url: "https://alert.jingoh.fr/scaleway"
|
||||
# method: POST
|
||||
# user: "{{ username }}"
|
||||
# password: "{{ password }}"
|
||||
# headers:
|
||||
# Title: "Backup Vault"
|
||||
# ta: "inbox_tray"
|
||||
# body: "Local Backup vault done !"
|
||||
# status_code: 200
|
||||
# tags: dock
|
||||
# delegate_to: localhost
|
||||
|
||||
|
||||
# - name: Exécuter la commande dans le conteneur Docker
|
||||
# community.docker.docker_container:
|
||||
# name: gitea
|
||||
# command: "gitea dump -c /data/gitea/conf/app.ini"
|
||||
# user: git
|
||||
# working_dir: /data/
|
||||
# state: present
|
||||
# interactive: no
|
||||
# image: gitea/gitea:latest
|
||||
# tty: no
|
||||
# tags: git
|
||||
|
||||
|
||||
|
||||
# docker exec -u git -w /data/ gitea gitea dump -c /data/gitea/conf/app.ini
|
||||
# mv /opt/dockerapps/appdata/gitea/gitea/gitea-dump-*.zip /opt/dockerapps/backup/
|
||||
# docker exec gitea-db pg_dump -U root gitea > gitea-db-pg.sql
|
||||
# mv ./gitea-db-pg.sql /opt/dockerapps/backup/
|
||||
# find /opt/dockerapps/backup/ -mtime +7 -exec rm {} \;
|
||||
# curl -u "$username:$password" -H "Title: Backup gitea" -H "ta:inbox_tray" -d "Local Backup gitea done !" https://alert.jingoh.fr/scaleway
|
||||
|
||||
# docker run --rm --volumes-from=vault -e UID=0 -e BACKUP_DIR=/data/backup -e TIMESTAMP=true -e ENCRYPTION_PASSWORD="$VAULT" bruceforce/vaultwarden-backup manual
|
||||
# chown -R stephane:stephane /opt/dockerapps/appdata/vaultwarden/backup
|
||||
# find /opt/dockerapps/appdata/vaultwarden/backup/ -mtime +7 -exec rm {} \;
|
||||
# curl -u "$username:$password" -H "Title: Backup vault" -H "ta:inbox_tray" -d "Local Backup vault done !" https://alert.jingoh.fr/scaleway
|
||||
- ansible.builtin.file:
|
||||
path: "{{ dockerapps_path }}/backup"
|
||||
state: directory
|
||||
mode: 0755
|
||||
recurse: true
|
||||
become: true
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user