deploy-base/roles/bootstrap/tasks/main.yml

79 lines
2.1 KiB
YAML

---
- block:
- name: check if atomic
stat:
path: /run/ostree-booted
register: ostree
- name: check for cloud.cfg
stat:
path: /etc/cloud/cloud.cfg
register: cloudcfg
- name: set fact (atomic state)
set_fact:
is_atomic: "{{ ostree.stat.exists }}"
- name: set fact (cloud.cfg state)
set_fact:
is_cloudy: "{{ cloudcfg.stat.exists }}"
- name: install prereqs
package:
name: "{{ item }}"
state: installed
with_items:
- libselinux-python
- sudo
when: ansible_distribution in ["CentOS", "Red Hat Enterprise Linux", "RedHat", "Fedora"] and not is_atomic
- name: enable fastestmirror (fedora - non-atomic)
lineinfile:
path: /etc/dnf/dnf.conf
regexp: "^fastestmirror="
line: "fastestmirror=True"
when: ansible_distribution in ["Fedora"] and not is_atomic
- name: remove update_etc_hosts from cloud.cfg
lineinfile:
line: ' - update_etc_hosts'
path: /etc/cloud/cloud.cfg
state: absent
when: is_cloudy|bool
- name: add hosts to /etc/hosts
lineinfile:
path: /etc/hosts
state: present
line: "{{ hostvars[item].ip }} {{ hostvars[item].ansible_hostname }}"
regexp: "^{{ hostvars[item].ip }} "
with_items: "{{ groups.all }}"
- name: set hostname to match inventory
hostname:
name: "{{ inventory_hostname }}"
register: hostname_change
- name: restart hostname-change sensitive services
service:
name: "{{ item }}"
state: restarted
with_items:
- rsyslog
when: (hostname_change is changed) and (ansible_distribution in ["CentOS", "Red Hat Enterprise Linux", "Fedora"] and not is_atomic)
- name: remove requiretty
lineinfile:
regexp: '^\w+\s+requiretty'
path: /etc/sudoers
state: absent
- name: install epel
package:
name: epel-release
state: latest
when: ansible_distribution in ["CentOS", "Red Hat Enterprise Linux"] and not is_atomic
tags:
- bootstrap