---
|
|
# 1) Deploy the lxc container(s)
|
|
- hosts: 'ldap'
|
|
# The host may not exist yet: do not gather facts
|
|
gather_facts: false
|
|
tags:
|
|
- 'lxc'
|
|
tasks:
|
|
# Delegate lxc container deployment to `ansible_lxc_host`
|
|
- import_role: name='lxc_guest'
|
|
vars:
|
|
vm_name: '{{ inventory_hostname }}'
|
|
vm_size: '1G'
|
|
delegate_to: '{{ ansible_lxc_host }}'
|
|
# The host may not be directly reachable: use `ssh_lxc` proxy to
|
|
# gather facts (setup) and configure SSH.
|
|
- set_fact: ansible_connection='ssh_lxc'
|
|
- setup:
|
|
- import_role: name='ssh_server'
|
|
# Now the host should be ssh-reachable
|
|
- set_fact: ansible_connection='ssh'
|
|
|
|
# 2) Deploy LDAP server(s)
|
|
- hosts: 'ldap'
|
|
roles:
|
|
- role: 'dns_record'
|
|
- role: 'ldap'
|
|
virtual_domains:
|
|
- '{{ domain }}'
|
|
# Default values:
|
|
#ldap_tls_enabled: true
|
|
#ldap_check_tree: true
|
|
|
|
# 3) Enable monitoring
|
|
- hosts: 'status'
|
|
roles:
|
|
- role: 'icinga2-monitoring'
|