Refactor playbooks and roles
This commit is contained in:
parent
baa35fa85f
commit
7130569e6f
|
|
@ -1,2 +0,0 @@
|
||||||
---
|
|
||||||
#- hosts:
|
|
||||||
|
|
@ -0,0 +1,68 @@
|
||||||
|
---
|
||||||
|
# play 1 - local
|
||||||
|
# check config info from inventory
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# play 2
|
||||||
|
# gather status
|
||||||
|
|
||||||
|
# play 3
|
||||||
|
# bootstrap
|
||||||
|
|
||||||
|
# play 4
|
||||||
|
# join
|
||||||
|
|
||||||
|
- name: Tests
|
||||||
|
hosts: swarm
|
||||||
|
connection: local
|
||||||
|
gather_facts: no
|
||||||
|
|
||||||
|
vars:
|
||||||
|
swarm_list: {}
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- debug: var=hostvars
|
||||||
|
|
||||||
|
- name: Gather Swarm info
|
||||||
|
set_fact:
|
||||||
|
swarm_list: "{{swarm_list + hostvars[hostname]['swarm_name']}}"
|
||||||
|
|
||||||
|
- debug: var=swarm_list
|
||||||
|
|
||||||
|
|
||||||
|
# # show all the hosts in the inventory
|
||||||
|
# - debug:
|
||||||
|
# msg: "{{ item }}"
|
||||||
|
# loop: "{{ groups['all'] }}"
|
||||||
|
|
||||||
|
# - name: printsomthieng
|
||||||
|
# debug:
|
||||||
|
# msg: "{{ item }}"
|
||||||
|
# with_items: "{{ play_hosts }}"
|
||||||
|
# #run_once: true
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# debug:
|
||||||
|
# msg:
|
||||||
|
# # - "{{ item }}"
|
||||||
|
# - "{{hostvars[item]['swarm_master']}}"
|
||||||
|
# #loop: "{{ hosts.items() | list }}"
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# - name: Create swarm_<SWARM>_<MASTER|WORKER>_<OPERATIONAL|BOOTSTRAP> groups
|
||||||
|
# add_host:
|
||||||
|
# hostname: "{{ item }}"
|
||||||
|
# groups: "swarm_{{item}}manager_operational"
|
||||||
|
# with_items: "{{ play_hosts }}"
|
||||||
|
# run_once: true
|
||||||
|
|
||||||
|
# - name: Display
|
||||||
|
# command: echo "swarm_{{item}}manager_operational"
|
||||||
|
|
@ -0,0 +1,6 @@
|
||||||
|
---
|
||||||
|
# NB inherit docker
|
||||||
|
- name: Create volumes
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
- name: launch Nextcloud aio docker image
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
---
|
---
|
||||||
- name: "Configure swarms"
|
- name: "Configure swarm"
|
||||||
hosts: swarm1
|
hosts: swarm1
|
||||||
roles:
|
roles:
|
||||||
- common
|
- common
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
hostname: "{{ item }}"
|
hostname: "{{ item }}"
|
||||||
groups: manager_group
|
groups: manager_group
|
||||||
with_items: "{{play_hosts}}"
|
with_items: "{{play_hosts}}"
|
||||||
when: hostvars[item]['swarm_master']
|
when: hostvars[item]['swarm_master'] is defined and hostvars[item]['swarm_master']
|
||||||
|
|
||||||
- name: "Prepare worker group"
|
- name: "Prepare worker group"
|
||||||
add_host:
|
add_host:
|
||||||
|
|
@ -1,15 +1,33 @@
|
||||||
# Ansible Playbooks
|
# Ansible Playbooks
|
||||||
|
|
||||||
## Playbooks
|
## Usage
|
||||||
##### Bootstrap
|
|
||||||
Creates user ansible with necessary privileges. Needs become password
|
The inventory defines labs, nodes and their group based on function.
|
||||||
|
|
||||||
|
Playbooks run Roles against node groups.
|
||||||
|
|
||||||
|
Roles define set of Tasks.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## Playbooks
|
||||||
|
|
||||||
|
**Site** playbook launches them all.
|
||||||
|
**Bootstrap** is to be run first on new installations.
|
||||||
|
|
||||||
|
### Site
|
||||||
|
This playbook recalls all the following playbooks in the stated order.
|
||||||
|
|
||||||
|
|
||||||
'ansible-playbook -i inventories bootstrap.yml -l nextrup_copy_test -u fabio -K --ask-vault-password'
|
|
||||||
|
|
||||||
##### Nodes
|
##### Nodes
|
||||||
Basic checks connectivity for **all**
|
Basic checks connectivity for **all**
|
||||||
|
|
||||||
|
|
||||||
|
##### Swarms
|
||||||
|
|
||||||
|
##### NextCloud
|
||||||
|
Installs Nextcloud AIO using SSE Lab / dockerized / nextcloud-aio
|
||||||
|
|
||||||
|
|
||||||
## Inventories
|
## Inventories
|
||||||
|
|
|
||||||
|
|
@ -3,3 +3,4 @@
|
||||||
- import_playbook: nodes.yml
|
- import_playbook: nodes.yml
|
||||||
#- import_playbook: controller.yml
|
#- import_playbook: controller.yml
|
||||||
- import_playbook: swarms.yml
|
- import_playbook: swarms.yml
|
||||||
|
#- import_playbook: nextcloud.yml
|
||||||
Loading…
Reference in New Issue