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.
ansible-homelab/playbooks/setup-homelab.yml

81 lines
1.7 KiB
YAML

---
- name: Update packages and ensure users on all hosts.
hosts: all
become: true
pre_tasks:
- name: Update Packages
ansible.builtin.apt:
upgrade: dist
update_cache: true
roles:
- role: setup_users
- name: Configure mergerfs pools.
hosts: mergerfs
become: true
roles:
- role: setup_mergerfs
tags: [mergerfs]
- name: Configure samba shares.
hosts: all
become: true
roles:
- role: geerlingguy.samba
tags: [samba]
- name: Install Docker on Docker hosts.
hosts: docker
become: true
roles:
- role: geerlingguy.pip
- role: geerlingguy.docker
- name: Install Portainer on Portainer hosts.
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]
vars:
portainer_version: "2.18.3"
- name: Setup and deploy compose services.
hosts: dell
become: true
pre_tasks:
- name: Include vault variables.
ansible.builtin.include_vars: '../{{ vault_file }}'
tags: [always]
roles:
- role: setup_compose_services
tags: [compose]
- name: Setup and deploy portainer services (snunmu).
hosts: snunmu
become: true
pre_tasks:
- name: Include vault variables.
ansible.builtin.include_vars: '../{{ vault_file }}'
tags: [always]
roles:
- role: portainer_bookstack
tags: [services]
#- name: Setup and deploy 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]