mirror of
https://github.com/FAUSheppy/no-secrets-athq-ansible
synced 2025-12-06 08:51:37 +01:00
318 lines
6.5 KiB
YAML
318 lines
6.5 KiB
YAML
- include_vars: services.yaml
|
|
|
|
- name: Deploy Docker daemon.json
|
|
template:
|
|
src: daemon.json
|
|
dest: /etc/docker/daemon.json
|
|
|
|
- name: Create data-dir
|
|
file:
|
|
name: /data/
|
|
state: directory
|
|
|
|
- name: Create opt-dir
|
|
file:
|
|
name: /opt/
|
|
state: directory
|
|
|
|
- name: Async Icinga mount directory
|
|
file:
|
|
name: /data/async-icinga
|
|
state: directory
|
|
|
|
- name: Async Icinga database mount directory
|
|
file:
|
|
name: /data/async-icinga
|
|
state: directory
|
|
|
|
- name: Async Icinga Service (static)
|
|
template:
|
|
src: async-config.json.j2
|
|
dest: /data/async-icinga/config.json
|
|
notify:
|
|
- reload async icinga settings
|
|
|
|
- name: Async Icinga Service (static)
|
|
template:
|
|
src: async-icinga-config.json.j2
|
|
dest: /data/async-icinga/async-icinga-config.json
|
|
notify:
|
|
- reload async icinga settings
|
|
|
|
- name: Create Event Dispatch Substitutions config dir
|
|
file:
|
|
name: /data/event-dispatcher/substitutions/
|
|
state: directory
|
|
|
|
- name: Copy Event Dispatcher Substitutions Map
|
|
template:
|
|
src: event-message-subsitution-map.yaml
|
|
dest: /data/event-dispatcher/substitutions/substitutions.yaml
|
|
|
|
- name: Async Icinga Service (dynamic from backup file)
|
|
copy:
|
|
src: async-icinga-config-dynamic.json
|
|
dest: /data/async-icinga/
|
|
notify:
|
|
- reload async icinga settings
|
|
|
|
- name: Create data directories
|
|
file:
|
|
name: "/data/{{ item }}/"
|
|
state: directory
|
|
with_items:
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- event-dispatcher
|
|
- reactive-resume
|
|
- hedgedoc
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
- money-balancer
|
|
- ntfy
|
|
- code-server
|
|
- nginx-media-cdn
|
|
- immich
|
|
- gitea
|
|
- gitea-runner
|
|
- atlantis-status
|
|
- logstash
|
|
|
|
- name: Copy AtlantisHub config
|
|
copy:
|
|
src: "atlantis-hub-content/config.yaml"
|
|
dest: "/data/atlantis-hub/config.yaml"
|
|
notify: restart hub
|
|
|
|
- name: Create AtlantisHubDirectories
|
|
file:
|
|
name: "/data/atlantis-hub/{{ item }}"
|
|
state: directory
|
|
with_items:
|
|
- static-icons
|
|
- instance
|
|
- static-cache
|
|
|
|
- name: Copy AtlantisHub static icons
|
|
copy:
|
|
src: "atlantis-hub-content/static-icons/"
|
|
dest: "/data/atlantis-hub/static-icons/"
|
|
|
|
- name: Copy AtlantisHub static icons
|
|
template:
|
|
src: "grafana.ini"
|
|
dest: "/data/grafana/grafana.ini"
|
|
|
|
- name: create_logstash_data_dirs
|
|
file:
|
|
name: "/data/logstash/{{ item }}"
|
|
state: directory
|
|
with_items:
|
|
- "config"
|
|
- "pipeline"
|
|
|
|
- name: copy_logstash_config
|
|
template:
|
|
src: "{{ item }}"
|
|
dest: "/data/logstash/config/"
|
|
with_items:
|
|
- "logstash.yml"
|
|
- "pipelines.yml"
|
|
|
|
- name: copy_logstash_pipeline_config
|
|
template:
|
|
src: "{{ item }}"
|
|
dest: "/data/logstash/pipeline/"
|
|
with_items:
|
|
- "logstash.conf"
|
|
|
|
- name: copy_atlantis_status_services
|
|
template:
|
|
src: "{{ item }}.yaml"
|
|
dest: "/data/atlantis-status/services/"
|
|
with_items:
|
|
- "atlantis-array"
|
|
- "service-dispatcher-config"
|
|
|
|
- name: Create compose directories
|
|
file:
|
|
name: "/opt/{{ item }}"
|
|
state: directory
|
|
with_items:
|
|
- athq-landing
|
|
- grafana
|
|
- potaris
|
|
- sector32
|
|
- async-icinga
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- event-dispatcher
|
|
#- tor
|
|
- reactive-resume
|
|
- hedgedoc
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
- money-balancer
|
|
- ntfy
|
|
- code-server
|
|
- serienampel
|
|
- nginx-media-cdn
|
|
- immich
|
|
- gitea
|
|
- gitea-runner
|
|
- atlantis-status
|
|
- logstash
|
|
|
|
- name: Copy compose templates
|
|
template:
|
|
src: "{{ item }}.yaml"
|
|
dest: "/opt/{{ item }}/"
|
|
with_items:
|
|
- athq-landing
|
|
- grafana
|
|
- potaris
|
|
- sector32
|
|
- async-icinga
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- event-dispatcher
|
|
#- tor
|
|
- hedgedoc
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
- money-balancer
|
|
- ntfy
|
|
- code-server
|
|
- serienampel
|
|
- nginx-media-cdn
|
|
- immich
|
|
- gitea
|
|
- gitea-runner
|
|
- atlantis-status
|
|
- logstash
|
|
|
|
- name: create sites-enabled dir
|
|
file:
|
|
path: "/opt/nginx-media-cdn/sites-enabled/"
|
|
state: directory
|
|
|
|
- name: Deploy nginx-media-cdn config files
|
|
copy:
|
|
src: "{{ item }}"
|
|
dest: "/opt/nginx-media-cdn/sites-enabled/"
|
|
with_items:
|
|
- media.conf
|
|
- cdn.conf
|
|
- ipcheck.conf
|
|
|
|
- name: Deploy nginx auth
|
|
copy:
|
|
src: "{{ item }}"
|
|
dest: "/opt/nginx-media-cdn/"
|
|
owner: 101
|
|
group: 101
|
|
with_items:
|
|
- htpasswd
|
|
|
|
- name: Log into private registry
|
|
docker_login:
|
|
registry: registry.atlantishq.de
|
|
username: docker
|
|
password: HISTORY_PURGED_SECRET
|
|
|
|
- name: Deploy compose templates
|
|
community.docker.docker_compose_v2:
|
|
remove_orphans: true
|
|
project_src: "/opt/{{ item }}/"
|
|
pull: "missing"
|
|
files:
|
|
- "{{ item }}.yaml"
|
|
with_items:
|
|
- athq-landing
|
|
- grafana
|
|
- potaris
|
|
- sector32
|
|
- async-icinga
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- event-dispatcher
|
|
#- tor
|
|
- reactive-resume
|
|
- hedgedoc
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
#- money-balancer
|
|
- ntfy
|
|
- code-server
|
|
- serienampel
|
|
- nginx-media-cdn
|
|
- immich
|
|
- gitea
|
|
- gitea-runner
|
|
- atlantis-status
|
|
- logstash
|
|
|
|
- name: OAuth2Proxy directories
|
|
file:
|
|
path: "/opt/oauth2proxy/{{ item }}/"
|
|
state: directory
|
|
recurse: yes
|
|
with_items:
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- async-icinga
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
#- reactive-resume
|
|
- money-balancer
|
|
- olive-tin
|
|
- atlantis-status
|
|
|
|
- name: include services ports
|
|
include_vars: services.yaml
|
|
|
|
- name: Deploy OAuth2Proxy compose files
|
|
template:
|
|
src: oauth-standalone-docker-compose.yaml
|
|
dest: "/opt/oauth2proxy/{{ item }}/docker-compose.yaml"
|
|
#remove_orphans: true
|
|
with_items:
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- async-icinga
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
- reactive-resume
|
|
- money-balancer
|
|
- olive-tin
|
|
- atlantis-status
|
|
|
|
- name: Deploy OAuth2Proxy
|
|
community.docker.docker_compose_v2:
|
|
project_src: /opt/oauth2proxy/{{ item }}/
|
|
pull: always
|
|
with_items:
|
|
- tmnf-replay-server
|
|
- atlantis-hub
|
|
- grafana
|
|
- async-icinga
|
|
- atlantis-verify
|
|
- soundlib-interface
|
|
- python-flask-picture-factory
|
|
#- reactive-resume
|
|
#- money-balancer
|
|
- olive-tin
|
|
- atlantis-status
|