You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
90 lines
1.9 KiB
YAML
90 lines
1.9 KiB
YAML
---
|
|
- name: Update packages and ensure users on all hosts.
|
|
hosts: all
|
|
become: true
|
|
gather_facts: false
|
|
strategy: free
|
|
roles:
|
|
- role: setup_users
|
|
|
|
- name: Install go on all hosts.
|
|
hosts: all
|
|
become: true
|
|
strategy: free
|
|
roles:
|
|
- role: gantsign.golang
|
|
golang_version: '1.21.1'
|
|
golang_gopath: '$HOME/workspace-go'
|
|
|
|
- name: Configure mergerfs pools.
|
|
hosts: mergerfs
|
|
strategy: free
|
|
become: true
|
|
roles:
|
|
- role: setup_mergerfs
|
|
tags: [mergerfs]
|
|
|
|
- name: Configure samba shares.
|
|
hosts: all
|
|
strategy: free
|
|
become: true
|
|
roles:
|
|
- role: geerlingguy.samba
|
|
tags: [samba]
|
|
|
|
- name: Install docker
|
|
hosts: docker
|
|
become: true
|
|
strategy: free
|
|
roles:
|
|
- role: setup_docker
|
|
tags: [docker]
|
|
|
|
- name: Install Portainer on Portainer hosts.
|
|
gather_facts: false
|
|
hosts: portainer
|
|
become: true
|
|
pre_tasks:
|
|
- name: Include vault variables.
|
|
ansible.builtin.include_vars: '../{{ vault_file }}'
|
|
tags: [always]
|
|
roles:
|
|
- role: setup_portainer
|
|
tags: [services, portainer]
|
|
|
|
- name: Install Portainer agent on Portainer agent hosts.
|
|
gather_facts: false
|
|
hosts: portainer_agent
|
|
become: true
|
|
roles:
|
|
- role: setup_portainer_agent
|
|
tags: [services, portainer_agent]
|
|
|
|
- name: Setup and deploy portainer services.
|
|
gather_facts: false
|
|
hosts: servers
|
|
become: true
|
|
strategy: free
|
|
tags: [services]
|
|
pre_tasks:
|
|
- name: Include vault variables.
|
|
ansible.builtin.include_vars: '../{{ vault_file }}'
|
|
tags: [always]
|
|
tasks:
|
|
- name: Setup and deploy portainer services.
|
|
include_role:
|
|
name: "{{ item.role }}"
|
|
with_items: "{{ portainer_roles }}"
|
|
|
|
|
|
- name: Setup and deploy templated portainer services.
|
|
hosts: servers
|
|
become: true
|
|
pre_tasks:
|
|
- name: Include vault variables.
|
|
ansible.builtin.include_vars: '../{{ vault_file }}'
|
|
tags: [always]
|
|
roles:
|
|
- role: setup_hosted_services
|
|
tags: [services]
|