2016-09-06 22:04:41 +08:00
|
|
|
---
|
2018-10-11 14:32:10 +08:00
|
|
|
- name: Fetch /etc/os-release
|
|
|
|
raw: cat /etc/os-release
|
|
|
|
register: os_release
|
|
|
|
changed_when: false
|
|
|
|
|
|
|
|
- name: Set bootstrap_os
|
|
|
|
set_fact:
|
|
|
|
os_family: >-
|
|
|
|
{%- if 'Ubuntu' in os_release.stdout -%}
|
|
|
|
ubuntu
|
|
|
|
{%- elif 'Debian' in os_release.stdout -%}
|
|
|
|
debian
|
|
|
|
{%- elif 'CoreOS' in os_release.stdout -%}
|
|
|
|
coreos
|
|
|
|
{%- elif 'Fedora' in os_release.stdout -%}
|
|
|
|
fedora
|
|
|
|
{%- elif 'CentOS' in os_release.stdout -%}
|
|
|
|
centos
|
|
|
|
{%- elif 'OpenSUSE' in os_release.stdout -%}
|
|
|
|
opensuse
|
|
|
|
{% endif %}
|
2016-09-08 02:19:46 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-ubuntu.yml
|
|
|
|
when: os_family == "ubuntu"
|
2017-10-03 15:30:45 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-debian.yml
|
|
|
|
when: os_family == "debian"
|
2016-12-09 17:38:45 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-coreos.yml
|
|
|
|
when: os_family == "coreos"
|
2018-09-20 01:57:20 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-fedora.yml
|
|
|
|
when: os_family == "fedora"
|
2016-12-08 00:16:06 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-centos.yml
|
|
|
|
when: os_family == "centos"
|
2018-04-26 17:52:06 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- include_tasks: bootstrap-opensuse.yml
|
|
|
|
when: os_family == "opensuse"
|
2017-02-25 05:41:27 +08:00
|
|
|
|
2018-10-10 10:14:33 +08:00
|
|
|
- import_tasks: setup-pipelining.yml
|
2017-03-27 18:27:15 +08:00
|
|
|
|
|
|
|
- name: Gather nodes hostnames
|
|
|
|
setup:
|
|
|
|
gather_subset: '!all'
|
2017-09-06 20:10:52 +08:00
|
|
|
filter: ansible_*
|
2017-03-27 18:27:15 +08:00
|
|
|
|
2018-04-26 17:52:06 +08:00
|
|
|
- name: Assign inventory name to unconfigured hostnames (non-CoreOS and Tumbleweed)
|
2017-03-27 18:27:15 +08:00
|
|
|
hostname:
|
|
|
|
name: "{{inventory_hostname}}"
|
2018-04-26 17:52:06 +08:00
|
|
|
when:
|
|
|
|
- override_system_hostname
|
|
|
|
- ansible_distribution not in ['openSUSE Tumbleweed']
|
|
|
|
- ansible_os_family not in ['CoreOS', 'Container Linux by CoreOS']
|
2017-09-06 20:10:52 +08:00
|
|
|
|
2018-04-26 17:52:06 +08:00
|
|
|
- name: Assign inventory name to unconfigured hostnames (CoreOS and Tumbleweed only)
|
2017-09-06 20:10:52 +08:00
|
|
|
command: "hostnamectl set-hostname {{inventory_hostname}}"
|
|
|
|
register: hostname_changed
|
2018-04-26 17:52:06 +08:00
|
|
|
when:
|
|
|
|
- ansible_hostname == 'localhost'
|
|
|
|
- ansible_distribution in ['openSUSE Tumbleweed'] or ansible_os_family in ['CoreOS', 'Container Linux by CoreOS']
|
|
|
|
- override_system_hostname
|
2017-09-06 20:10:52 +08:00
|
|
|
|
2018-04-26 17:52:06 +08:00
|
|
|
- name: Update hostname fact (CoreOS and Tumbleweed only)
|
2017-09-06 20:10:52 +08:00
|
|
|
setup:
|
|
|
|
gather_subset: '!all'
|
|
|
|
filter: ansible_hostname
|
2018-04-26 17:52:06 +08:00
|
|
|
when:
|
|
|
|
- hostname_changed.changed
|