Implemented update-repository-with-files.yml

This commit is contained in:
Kevin Veen-Birkenbach 2024-05-26 21:09:36 +02:00
parent 4735081128
commit 06537dfe9a
8 changed files with 49 additions and 40 deletions

View File

@ -1,6 +1,5 @@
docker_compose_project_name: "akaunting" docker_compose_project_name: "akaunting"
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml" docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose.yml.backup"
database_type: "mariadb" database_type: "mariadb"
database_password: "{{akaunting_database_password}}" database_password: "{{akaunting_database_password}}"
repository_address: "https://github.com/akaunting/docker.git" repository_address: "https://github.com/akaunting/docker.git"

View File

@ -1,7 +1,6 @@
--- ---
docker_compose_project_name: "attendize" docker_compose_project_name: "attendize"
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml" docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose.yml.backup"
mail_interface_domain: "mail.{{domain}}" mail_interface_domain: "mail.{{domain}}"
database_type: "mariadb" database_type: "mariadb"
database_password: "{{attendize_database_password}}" database_password: "{{attendize_database_password}}"

View File

@ -2,7 +2,6 @@ docker_compose_project_name: "openproject"
repository_directory: "{{ path_docker_compose_instances }}{{docker_compose_project_name}}/" repository_directory: "{{ path_docker_compose_instances }}{{docker_compose_project_name}}/"
docker_compose_instance_directory: "{{repository_directory}}compose/" docker_compose_instance_directory: "{{repository_directory}}compose/"
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml" docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose.yml.backup"
database_password: "{{openproject_database_password}}" database_password: "{{openproject_database_password}}"
repository_address: "https://github.com/opf/openproject-deploy" repository_address: "https://github.com/opf/openproject-deploy"
database_type: "postgres" database_type: "postgres"

View File

@ -5,8 +5,13 @@
- name: "include tasks nginx-docker-proxy-domain.yml" - name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml include_tasks: nginx-docker-proxy-domain.yml
- name: "include tasks update-repository-with-docker-compose.yml" - name: "include tasks update-repository-with-files.yml"
include_tasks: update-repository-with-docker-compose.yml include_tasks: update-repository-with-files.yml
vars:
detached_files:
- .env
- docker-compose.yml
- docker-compose-init.yml
- name: configure run.env - name: configure run.env
template: src=env.j2 dest={{docker_compose_instance_directory}}/.env template: src=env.j2 dest={{docker_compose_instance_directory}}/.env

View File

@ -1,6 +1,5 @@
docker_compose_project_name: "taigaio" docker_compose_project_name: "taigaio"
docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml" docker_compose_file_path: "{{docker_compose_instance_directory}}docker-compose.yml"
docker_compose_backup_path: "/tmp/{{docker_compose_project_name}}-docker-compose.yml.backup"
database_type: "postgres" database_type: "postgres"
database_password: "{{taigaio_database_password}}" database_password: "{{taigaio_database_password}}"
repository_address: "https://github.com/taigaio/taiga-docker" repository_address: "https://github.com/taigaio/taiga-docker"

View File

@ -1,34 +1,5 @@
- name: "backup docker-compose.yml if it exists" - name: "include tasks update-repository-with-files.yml"
command: > include_tasks: update-repository-with-files.yml
mv "{{ docker_compose_file_path }}" "{{ docker_compose_backup_path }}" vars:
args: detached_files:
removes: "{{ docker_compose_file_path }}" - "{{docker_compose_file_path}}"
become: true
- name: checkout repository
ansible.builtin.shell: git checkout .
become: true
args:
chdir: "{{docker_compose_instance_directory}}"
ignore_errors: true
- name: pull docker repository
git:
repo: "{{ repository_address }}"
dest: "{{ repository_directory }}"
update: yes
notify: docker compose project setup
become: true
- name: "restore docker-compose.yml from backup"
command: >
mv "{{ docker_compose_backup_path }}" "{{ docker_compose_file_path }}"
args:
removes: "{{ docker_compose_backup_path }}"
become: true
- name: "copy docker-compose.yml"
template:
src: docker-compose.yml.j2
dest: "{{ docker_compose_file_path }}"
notify: docker compose project setup

View File

@ -0,0 +1,37 @@
- name: "backup docker-compose.yml if it exists"
command: >
mv "{{docker_compose_instance_directory}}{{ item }}" "/tmp/{{docker_compose_project_name}}-{{ item }}.backup"
args:
removes: "{{docker_compose_instance_directory}}{{ item }}"
become: true
loop: "{{ detached_files }}"
- name: checkout repository
ansible.builtin.shell: git checkout .
become: true
args:
chdir: "{{docker_compose_instance_directory}}"
ignore_errors: true
- name: pull docker repository
git:
repo: "{{ repository_address }}"
dest: "{{ repository_directory }}"
update: yes
notify: docker compose project setup
become: true
- name: "restore docker-compose.yml from backup"
command: >
mv "/tmp/{{docker_compose_project_name}}-{{ item }}.backup" "{{docker_compose_instance_directory}}{{ item }}"
args:
removes: "/tmp/{{docker_compose_project_name}}-{{ item }}.backup"
become: true
loop: "{{ detached_files }}"
- name: "copy {{ item }}"
template:
src: "{{ item }}.j2"
dest: "{{docker_compose_instance_directory}}{{ item }}"
loop: "{{ detached_files }}"
notify: docker compose project setup