Compare commits

..

5 Commits

31 changed files with 107 additions and 163 deletions

View File

@ -1,6 +1,7 @@
# General
reset_files: false # Cleans up all CyMaIS files. It's necessary to run to whole playbook and not particial roles when using this function.
verbose: false # Prints well formated debug information
test_run: false # Executes test routines instead of productive routines
database_delay: "0" # Database delay to wait for the central database before continue tasks
top_domain: "localhost" # Change this in inventory to your domain
ip4_address: "127.0.0.1" # Change thie in inventory to the ip address of your server

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml

View File

@ -1,12 +1,14 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: receive {{ mail_interface_domain }} certificate
command: certbot certonly --agree-tos --email {{ administrator_email }} --non-interactive --webroot -w /var/lib/letsencrypt/ -d {{ mail_interface_domain }}
- name: receive {{ domain }} certificate
command: certbot certonly --agree-tos --email {{ administrator_email }} --non-interactive --webroot -w /var/lib/letsencrypt/ -d {{ domain }}
- name: "include tasks to receive attendize certbot certificate"
include_tasks: recieve-certbot-certificate.yml
vars:
domain: "{{ item }}"
loop:
- "{{ mail_interface_domain }}"
- "{{ domain }}"
- name: configure {{domain}}.conf
template:

View File

@ -1,15 +1,11 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,6 +1,6 @@
---
- name: include docker vars
include_vars: vars/docker-database-service.yml.j2
include_vars: vars/docker-common.yml.j2
- name: load docker compose dependencies
include_role:

View File

@ -1,5 +1,5 @@
---
- name: recreate discourse
command:
cmd: ./launcher rebuild app
cmd: ./launcher rebuild discourse_application
chdir: "{{discourse_repository_directory}}"

View File

@ -6,17 +6,29 @@
name: which
state: present
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: "stop container discourse_application"
command:
cmd: "docker stop discourse_application"
ignore_errors: true
when: reset_files | bool
- name: "rm container discourse_application"
command:
cmd: "docker rm discourse_application"
ignore_errors: true
when: reset_files | bool
- name: "cleanup central database from {{docker_compose_project_name}}_default network"
command:
cmd: "docker network disconnect discourse_default central-{{ database_type }}"
ignore_errors: true
when: reset_files | bool
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml
@ -41,18 +53,12 @@
mode: '700'
state: directory
- name: "copy configuration to {{discourse_repository_directory}}containers/app.yml"
- name: "copy configuration to {{discourse_repository_directory}}containers/discourse_application.yml"
template:
src: app.yml.j2
dest: "{{discourse_repository_directory}}containers/app.yml"
src: discourse_application.yml.j2
dest: "{{discourse_repository_directory}}containers/discourse_application.yml"
notify: recreate discourse
- name: "Ensure {{docker_compose_project_name}}_default network exists"
community.docker.docker_network:
name: "{{docker_compose_project_name}}_default"
state: present
when: enable_central_database | bool
- name: "add central database temporary to {{docker_compose_project_name}}_default"
command:
cmd: "docker network connect discourse_default central-{{ database_type }}"

View File

@ -1,15 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,15 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,15 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
@ -8,11 +8,6 @@
loop_control:
loop_var: domain
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,15 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template:

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include create-domains.yml"
include_tasks: create-domains.yml
@ -8,12 +8,6 @@
loop_control:
loop_var: domain
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: copy docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml
notify: docker compose project setup

View File

@ -1,16 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template:
src: "docker-compose.yml.j2"

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
@ -14,11 +14,6 @@
domain: "{{element_domain}}"
http_port: "{{element_http_port}}"
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
#- name: "create {{docker_compose_instance_directory}}mautrix_whatsapp"
# file:

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks create-proxy-with-domain-replace.yml"
include_tasks: create-proxy-with-domain-replace.yml

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include task certbot-matomo.yml"
include_tasks: certbot-matomo.yml
@ -11,23 +11,12 @@
dest: "{{nginx_servers_directory}}{{domain}}.conf"
notify: restart nginx
- name: "create {{path_docker_volumes}}nextcloud/"
file:
path: "{{path_docker_volumes}}nextcloud"
state: directory
mode: 0755
- name: configure nginx.conf
template:
src: "templates/nginx.conf.j2"
dest: "{{path_docker_volumes}}nextcloud/nginx.conf"
notify: docker compose project setup
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template:

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include create-domains.yml"
include_tasks: create-domains.yml
@ -8,11 +8,6 @@
loop_control:
loop_var: domain
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: copy docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml

View File

@ -1,16 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template: src=docker-compose.yml.j2 dest={{docker_compose_instance_directory}}docker-compose.yml
notify: docker compose project setup

View File

@ -1,12 +1,6 @@
---
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: pull app repository
git:

View File

@ -1,6 +1,6 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
@ -10,12 +10,6 @@
vars:
nginx_docker_reverse_proxy_extra_configuration: "client_max_body_size {{wordpress_max_upload_size}};"
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: "Transfering upload.ini to {{docker_compose_instance_directory}}"
template:
src: upload.ini.j2

View File

@ -1,16 +1,10 @@
---
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: "include docker-compose-database.yml"
include_tasks: docker-compose-database.yml
- name: "include tasks nginx-docker-proxy-domain.yml"
include_tasks: nginx-docker-proxy-domain.yml
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755
- name: add docker-compose.yml
template:
src: "docker-compose.yml.j2"

View File

@ -1,7 +1,8 @@
---
- name: recieve redirect source certificates
command: certbot certonly --agree-tos --email {{administrator_email}} --non-interactive --webroot -w /var/lib/letsencrypt/ -d {{item.source}}
loop: "{{domain_mappings}}"
- name: "include task receive certbot certificate"
include_tasks: recieve-certbot-certificate.yml
vars:
domain: "{{ domain }}"
- name: configure nginx redirect configurations
vars:

View File

@ -1,11 +1,18 @@
- name: include docker vars
include_vars: vars/docker-database-service.yml.j2
include_vars: vars/docker-common.yml.j2
- name: load docker compose dependencies
include_role:
name: docker-compose
- name: create central database
include_role:
name: docker-{{database_type}}
when: enable_central_database | bool
- name: "remove {{ docker_compose_instance_directory }} and all its contents"
file:
path: "{{ docker_compose_instance_directory }}"
state: absent
when: reset_files | bool
- name: "create {{docker_compose_instance_directory}}"
file:
path: "{{docker_compose_instance_directory}}"
state: directory
mode: 0755

View File

@ -0,0 +1,10 @@
- name: include docker vars/docker-database.yml.j2
include_vars: vars/docker-database.yml.j2
- name: "include docker-compose-common.yml"
include_tasks: docker-compose-common.yml
- name: create central database
include_role:
name: docker-{{database_type}}
when: enable_central_database | bool

View File

@ -1,2 +1,5 @@
- name: recieve certbot certificate for {{domain}}
command: certbot certonly --agree-tos --email {{administrator_email}} --non-interactive --webroot -w /var/lib/letsencrypt/ -d {{domain}}
- name: recieve certbot certificate for {{ domain }}
command: >-
certbot certonly --agree-tos --email {{ administrator_email }}
--non-interactive --webroot -w /var/lib/letsencrypt/ -d {{ domain }}
{{ '--test-cert' if test_run | bool else '' }}

View File

@ -0,0 +1 @@
docker_compose_instance_directory: "{{ path_docker_compose_instances + docker_compose_project_name + '/' }}"

View File

@ -1,4 +1,3 @@
docker_compose_instance_directory: "{{ path_docker_compose_instances + docker_compose_project_name + '/' }}"
database_instance: "{{ 'central-' + database_type if enable_central_database else docker_compose_project_name }}"
database_host: "{{ 'central-' + database_type if enable_central_database else 'database' }}"
database_name: "{{ docker_compose_project_name }}"