106 lines
2.7 KiB
YAML
106 lines
2.7 KiB
YAML
---
|
|
- name: load provisioner facts
|
|
hosts: internal
|
|
gather_facts: false
|
|
tasks:
|
|
- name: include provisioner role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.provisioner
|
|
tasks_from: load_facts.yml
|
|
apply:
|
|
tags: [always]
|
|
tags: [always]
|
|
|
|
- name: setup internal infrastructure
|
|
hosts: internal
|
|
gather_facts: false
|
|
tasks:
|
|
- name: include security role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.security
|
|
apply:
|
|
tags: [security]
|
|
tags: [security, firewall]
|
|
- name: include common role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.common
|
|
apply:
|
|
tags: [common]
|
|
tags: [common]
|
|
|
|
- name: setup servers
|
|
hosts: internal:&server
|
|
tasks:
|
|
- name: include server role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.server
|
|
apply:
|
|
tags: [server]
|
|
tags: [server]
|
|
|
|
- name: setup vault
|
|
hosts: internal:&vault
|
|
tasks:
|
|
- name: include vault role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.vault
|
|
apply:
|
|
tags: [vault]
|
|
tags: [vault]
|
|
|
|
- name: setup mariadb servers
|
|
hosts: internal:&mariadb
|
|
tasks:
|
|
- name: include mariadb role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.mariadb
|
|
apply:
|
|
tags: [mariadb]
|
|
tags: [mariadb]
|
|
|
|
- name: setup postgresql servers
|
|
hosts: internal:&postgresql
|
|
tasks:
|
|
- name: include postgresql role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.postgresql
|
|
apply:
|
|
tags: [postgresql]
|
|
tags: [postgresql]
|
|
|
|
- name: setup workstations
|
|
hosts: internal:&workstation
|
|
tasks:
|
|
- name: include workstation role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.workstation
|
|
apply:
|
|
tags: [workstation]
|
|
tags: [workstation]
|
|
- name: include development role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.development
|
|
apply:
|
|
tags: [development]
|
|
tags: [development]
|
|
|
|
- name: setup gaming tools
|
|
hosts: internal:&gaming
|
|
tasks:
|
|
- name: include gaming role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.gaming
|
|
apply:
|
|
tags: [gaming]
|
|
tags: [gaming]
|
|
|
|
# WARNING: OpenTofu states depend on setting up the postgresql database first
|
|
- name: install K3S
|
|
hosts: internal:&k3s
|
|
tasks:
|
|
- name: include k3s role
|
|
ansible.builtin.include_role:
|
|
name: nullified.infrastructure.k3s
|
|
apply:
|
|
tags: [k3s]
|
|
tags: [k3s, helm, opentofu]
|