netcup-setup/ansible/deploy_services.yml
2025-09-27 12:06:30 +02:00

218 lines
5.4 KiB
YAML

- name: Deploy services
hosts: all
become: yes
tasks:
# Install base software for rootless podman containers
- name: Check if systemd-container is installed
ansible.builtin.command:
cmd: "zypper se -i systemd-container"
register: systemd_container_installed
ignore_errors: yes
- name: Check if podman is installed
ansible.builtin.command:
cmd: "zypper se -i podman"
register: podman_installed
ignore_errors: yes
- name: Install software if not installed
ansible.builtin.command:
cmd: "transactional-update --non-interactive pkg in systemd-container podman"
become: yes
when: systemd_container_installed.rc != 0 or podman_installed.rc != 0
register: software_installed
- name: Reboot if software was installed
ansible.builtin.reboot:
when: software_installed.changed
# Deploy services as rootless containers
- name: Deploy traefik
include_role:
name: rootless-podman-service
apply:
tags:
- traefik
vars:
service_name: "traefik"
systemd_service_name: "traefik"
quadlet_template_src: "./my_service_templates"
tags:
- traefik
- name: Deploy wekantesting
include_role:
name: rootless-podman-service
apply:
tags:
- wekan
- wekantesting
vars:
service_name: "wekantesting"
systemd_service_name: "null" #"wekantesting-pod"
quadlet_template_src: "./my_service_templates"
tags:
- wekan
- wekantesting
- name: Deploy wekan
include_role:
name: rootless-podman-service
apply:
tags:
- wekan
vars:
service_name: "wekan"
systemd_service_name: "null" #"wekan-pod"
quadlet_template_src: "./my_service_templates"
tags:
- wekan
- name: Deploy gitea
include_role:
name: rootless-podman-service
apply:
tags:
- gitea
vars:
service_name: "gitea"
systemd_service_name: "gitea-pod"
quadlet_template_src: "./my_service_templates"
tags:
- gitea
- name: Deploy mumble
include_role:
name: rootless-podman-service
apply:
tags:
- mumble
vars:
service_name: "mumble"
systemd_service_name: "mumble"
quadlet_template_src: "./my_service_templates"
tags:
- mumble
- name: Deploy bitwarden
include_role:
name: rootless-podman-service
apply:
tags:
- bitwarden
vars:
service_name: "bitwarden"
systemd_service_name: "bitwarden"
quadlet_template_src: "./my_service_templates"
tags:
- bitwarden
- name: Deploy actual
include_role:
name: rootless-podman-service
apply:
tags:
- actual
vars:
service_name: "actual"
systemd_service_name: "actual"
quadlet_template_src: "./my_service_templates"
tags:
- actual
- name: Deploy nextcloud
include_role:
name: rootless-podman-service
apply:
tags:
- nextcloud
vars:
service_name: "nextcloud"
systemd_service_name: "nextcloud-pod"
quadlet_template_src: "./my_service_templates"
service_directories:
- db
- data
tags:
- nextcloud
- name: Deploy paperless
include_role:
name: rootless-podman-service
apply:
tags:
- paperless
vars:
service_name: "paperless"
systemd_service_name: "paperless-pod"
quadlet_template_src: "./my_service_templates"
service_directories:
- br
- db
- data
- media
- export
- consume
tags:
- paperless
- name: Deploy bookstack
include_role:
name: rootless-podman-service
apply:
tags:
- bookstack
vars:
service_name: "bookstack"
systemd_service_name: "bookstack-pod"
quadlet_template_src: "./my_service_templates"
service_directories:
- db
- data
tags:
- bookstack
- name: Deploy rustdesk
include_role:
name: rootless-podman-service
apply:
tags:
- rustdesk
vars:
service_name: "rustdesk"
systemd_service_name: "rustdesk-pod"
quadlet_template_src: "./my_service_templates"
service_directories:
- data
tags:
- rustdesk
- name: Deploy languagetool
include_role:
name: rootless-podman-service
apply:
tags:
- languagetool
vars:
service_name: "languagetool"
systemd_service_name: "languagetool"
quadlet_template_src: "./my_service_templates"
service_directories:
- ngrams
tags:
- languagetool
- name: Deploy sgnarva
include_role:
name: rootless-podman-service
apply:
tags:
- sgnarva
vars:
service_name: "sgnarva"
systemd_service_name: "sgnarva-pod"
quadlet_template_src: "./my_service_templates"
service_directories:
- sgnarvaweb
- sgnarvadb
tags:
- sgnarva