168 lines
5.3 KiB
YAML
168 lines
5.3 KiB
YAML
---
|
|
- name: Converge nbops host
|
|
hosts: all
|
|
become: true
|
|
gather_facts: true
|
|
|
|
pre_tasks:
|
|
- name: Validate supported operating system
|
|
ansible.builtin.assert:
|
|
that:
|
|
- ansible_distribution == "Debian"
|
|
- ansible_distribution_major_version | int >= 13
|
|
fail_msg: "nbops targets Debian 13 Trixie or newer."
|
|
tags:
|
|
- always
|
|
|
|
roles:
|
|
- role: base
|
|
tags: [base]
|
|
when: "'base' in nbops_roles | default([])"
|
|
- role: ssh
|
|
tags: [ssh]
|
|
when: "'ssh' in nbops_roles | default([])"
|
|
- role: ufw
|
|
tags: [ufw]
|
|
when: "'ufw' in nbops_roles | default([])"
|
|
- role: updates
|
|
tags: [updates]
|
|
when: "'updates' in nbops_roles | default([])"
|
|
- role: docker
|
|
tags: [docker]
|
|
when: "'docker' in nbops_roles | default([])"
|
|
- role: mtls
|
|
tags: [mtls]
|
|
when: "'mtls' in nbops_roles | default([])"
|
|
- role: monitoring
|
|
tags: [monitoring]
|
|
when: "'monitoring' in nbops_roles | default([])"
|
|
- role: traefik
|
|
tags: [traefik]
|
|
when: "'traefik' in nbops_roles | default([])"
|
|
- role: authentik
|
|
tags: [authentik]
|
|
when: "'authentik' in nbops_roles | default([])"
|
|
- role: immich
|
|
tags: [immich]
|
|
when: "'immich' in nbops_roles | default([])"
|
|
- role: gitea
|
|
tags: [gitea]
|
|
when: "'gitea' in nbops_roles | default([])"
|
|
- role: ocis
|
|
tags: [ocis]
|
|
when: "'ocis' in nbops_roles | default([])"
|
|
- role: pterodactyl
|
|
tags: [pterodactyl]
|
|
when: "'pterodactyl' in nbops_roles | default([])"
|
|
- role: arr
|
|
tags: [arr]
|
|
when: "'arr' in nbops_roles | default([])"
|
|
- role: jellyfin
|
|
tags: [jellyfin]
|
|
when: "'jellyfin' in nbops_roles | default([])"
|
|
- role: pelican_panel
|
|
tags: [pelican_panel]
|
|
when: "'pelican_panel' in nbops_roles | default([])"
|
|
- role: pelican_server
|
|
tags: [pelican_server]
|
|
when: "'pelican_server' in nbops_roles | default([])"
|
|
- role: authentik_ldap
|
|
tags: [authentik_ldap]
|
|
when: "'authentik_ldap' in nbops_roles | default([])"
|
|
- role: authentik_proxy
|
|
tags: [authentik_proxy]
|
|
when: "'authentik_proxy' in nbops_roles | default([])"
|
|
- role: authentik_rac
|
|
tags: [authentik_rac]
|
|
when: "'authentik_rac' in nbops_roles | default([])"
|
|
- role: jellyseerr
|
|
tags: [jellyseerr]
|
|
when: "'jellyseerr' in nbops_roles | default([])"
|
|
- role: qbittorrent
|
|
tags: [qbittorrent]
|
|
when: "'qbittorrent' in nbops_roles | default([])"
|
|
- role: transmission
|
|
tags: [transmission]
|
|
when: "'transmission' in nbops_roles | default([])"
|
|
- role: wizarr
|
|
tags: [wizarr]
|
|
when: "'wizarr' in nbops_roles | default([])"
|
|
- role: homarr
|
|
tags: [homarr]
|
|
when: "'homarr' in nbops_roles | default([])"
|
|
- role: flaresolverr
|
|
tags: [flaresolverr]
|
|
when: "'flaresolverr' in nbops_roles | default([])"
|
|
- role: cleanuparr
|
|
tags: [cleanuparr]
|
|
when: "'cleanuparr' in nbops_roles | default([])"
|
|
- role: pinchflat
|
|
tags: [pinchflat]
|
|
when: "'pinchflat' in nbops_roles | default([])"
|
|
- role: nginx_content
|
|
tags: [nginx_content]
|
|
when: "'nginx_content' in nbops_roles | default([])"
|
|
- role: code_server
|
|
tags: [code_server]
|
|
when: "'code_server' in nbops_roles | default([])"
|
|
- role: filebrowser_quantum
|
|
tags: [filebrowser_quantum]
|
|
when: "'filebrowser_quantum' in nbops_roles | default([])"
|
|
- role: kiwix_serve
|
|
tags: [kiwix_serve]
|
|
when: "'kiwix_serve' in nbops_roles | default([])"
|
|
- role: ipv6nat
|
|
tags: [ipv6nat]
|
|
when: "'ipv6nat' in nbops_roles | default([])"
|
|
- role: php_fpm
|
|
tags: [php_fpm]
|
|
when: "'php_fpm' in nbops_roles | default([])"
|
|
- role: valkey
|
|
tags: [valkey]
|
|
when: "'valkey' in nbops_roles | default([])"
|
|
- role: syncthing
|
|
tags: [syncthing]
|
|
when: "'syncthing' in nbops_roles | default([])"
|
|
- role: paperless_ngx
|
|
tags: [paperless_ngx]
|
|
when: "'paperless_ngx' in nbops_roles | default([])"
|
|
- role: kavita
|
|
tags: [kavita]
|
|
when: "'kavita' in nbops_roles | default([])"
|
|
- role: gitea_act_runner
|
|
tags: [gitea_act_runner]
|
|
when: "'gitea_act_runner' in nbops_roles | default([])"
|
|
- role: vaultwarden
|
|
tags: [vaultwarden]
|
|
when: "'vaultwarden' in nbops_roles | default([])"
|
|
- role: grafana
|
|
tags: [grafana]
|
|
when: "'grafana' in nbops_roles | default([])"
|
|
- role: loki
|
|
tags: [loki]
|
|
when: "'loki' in nbops_roles | default([])"
|
|
- role: alloy
|
|
tags: [alloy]
|
|
when: "'alloy' in nbops_roles | default([])"
|
|
- role: grafana_renderer
|
|
tags: [grafana_renderer]
|
|
when: "'grafana_renderer' in nbops_roles | default([])"
|
|
- role: prometheus
|
|
tags: [prometheus]
|
|
when: "'prometheus' in nbops_roles | default([])"
|
|
- role: uptime_kuma
|
|
tags: [uptime_kuma]
|
|
when: "'uptime_kuma' in nbops_roles | default([])"
|
|
- role: requarks
|
|
tags: [requarks]
|
|
when: "'requarks' in nbops_roles | default([])"
|
|
- role: postgres
|
|
tags: [postgres]
|
|
when: "'postgres' in nbops_roles | default([])"
|
|
- role: fiveetools
|
|
tags: [fiveetools]
|
|
when: "'fiveetools' in nbops_roles | default([])"
|
|
- role: ntfy
|
|
tags: [ntfy]
|
|
when: "'ntfy' in nbops_roles | default([])"
|