Refactor base server setup tasks
This commit is contained in:
parent
334596436d
commit
3cec6947ed
|
@ -7,7 +7,7 @@
|
||||||
tags:
|
tags:
|
||||||
- setup-all
|
- setup-all
|
||||||
|
|
||||||
- import_tasks: "{{ role_path }}/tasks/setup_server_base.yml"
|
- import_tasks: "{{ role_path }}/tasks/server_base/setup.yml"
|
||||||
when: run_setup|bool
|
when: run_setup|bool
|
||||||
tags:
|
tags:
|
||||||
- setup-all
|
- setup-all
|
||||||
|
|
19
roles/matrix-base/tasks/server_base/setup.yml
Normal file
19
roles/matrix-base/tasks/server_base/setup.yml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- include_tasks: "{{ role_path }}/tasks/server_base/setup_centos.yml"
|
||||||
|
when: ansible_distribution == 'CentOS'
|
||||||
|
|
||||||
|
- include_tasks: "{{ role_path }}/tasks/server_base/setup_debian.yml"
|
||||||
|
when: ansible_os_family == 'Debian'
|
||||||
|
|
||||||
|
- name: Ensure Docker is started and autoruns
|
||||||
|
service:
|
||||||
|
name: docker
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
|
|
||||||
|
- name: Ensure ntpd is started and autoruns
|
||||||
|
service:
|
||||||
|
name: "{{ 'ntpd' if ansible_os_family == 'RedHat' else 'ntp' }}"
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
33
roles/matrix-base/tasks/server_base/setup_centos.yml
Normal file
33
roles/matrix-base/tasks/server_base/setup_centos.yml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: Ensure Docker repository is enabled
|
||||||
|
template:
|
||||||
|
src: "{{ role_path }}/files/yum.repos.d/{{ item }}"
|
||||||
|
dest: "/etc/yum.repos.d/{{ item }}"
|
||||||
|
owner: "root"
|
||||||
|
group: "root"
|
||||||
|
mode: 0644
|
||||||
|
with_items:
|
||||||
|
- docker-ce.repo
|
||||||
|
|
||||||
|
- name: Ensure Docker's RPM key is trusted
|
||||||
|
rpm_key:
|
||||||
|
state: present
|
||||||
|
key: https://download.docker.com/linux/centos/gpg
|
||||||
|
|
||||||
|
- name: Ensure yum packages are installed
|
||||||
|
yum:
|
||||||
|
name:
|
||||||
|
- bash-completion
|
||||||
|
- docker-python
|
||||||
|
- ntp
|
||||||
|
- fuse
|
||||||
|
state: latest
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: Ensure docker-ce is installed
|
||||||
|
yum:
|
||||||
|
name:
|
||||||
|
- docker-ce
|
||||||
|
state: latest
|
||||||
|
update_cache: yes
|
40
roles/matrix-base/tasks/server_base/setup_debian.yml
Normal file
40
roles/matrix-base/tasks/server_base/setup_debian.yml
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
- name: Ensure APT usage dependencies are installed
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- apt-transport-https
|
||||||
|
- ca-certificates
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: Ensure Docker's APT key is trusted
|
||||||
|
apt_key:
|
||||||
|
url: https://download.docker.com/linux/ubuntu/gpg
|
||||||
|
id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
|
||||||
|
state: present
|
||||||
|
register: add_repository_key
|
||||||
|
ignore_errors: true
|
||||||
|
|
||||||
|
- name: Ensure Docker repository is enabled
|
||||||
|
apt_repository:
|
||||||
|
repo: "deb [arch=amd64] https://download.docker.com/linux/{{ ansible_distribution|lower }} {{ ansible_distribution_release }} stable"
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: Ensure APT packages are installed
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- bash-completion
|
||||||
|
- python-docker
|
||||||
|
- ntp
|
||||||
|
- fuse
|
||||||
|
state: latest
|
||||||
|
update_cache: yes
|
||||||
|
|
||||||
|
- name: Ensure docker-ce is installed
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- docker-ce
|
||||||
|
state: latest
|
||||||
|
update_cache: yes
|
|
@ -1,90 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
- name: Ensure Docker repository is enabled (CentOS)
|
|
||||||
template:
|
|
||||||
src: "{{ role_path }}/files/yum.repos.d/{{ item }}"
|
|
||||||
dest: "/etc/yum.repos.d/{{ item }}"
|
|
||||||
owner: "root"
|
|
||||||
group: "root"
|
|
||||||
mode: 0644
|
|
||||||
with_items:
|
|
||||||
- docker-ce.repo
|
|
||||||
when: ansible_distribution == 'CentOS'
|
|
||||||
|
|
||||||
- name: Ensure Docker's RPM key is trusted
|
|
||||||
rpm_key:
|
|
||||||
state: present
|
|
||||||
key: https://download.docker.com/linux/centos/gpg
|
|
||||||
when: ansible_distribution == 'CentOS'
|
|
||||||
|
|
||||||
- name: Ensure yum packages are installed (CentOS)
|
|
||||||
yum:
|
|
||||||
name:
|
|
||||||
- bash-completion
|
|
||||||
- docker-ce
|
|
||||||
- docker-python
|
|
||||||
- ntp
|
|
||||||
- fuse
|
|
||||||
state: latest
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_distribution == 'CentOS'
|
|
||||||
|
|
||||||
- name: Ensure APT usage dependencies are installed (Debian)
|
|
||||||
apt:
|
|
||||||
name:
|
|
||||||
- apt-transport-https
|
|
||||||
- ca-certificates
|
|
||||||
state: present
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_os_family == 'Debian'
|
|
||||||
|
|
||||||
- name: Gather package facts (Debian)
|
|
||||||
package_facts:
|
|
||||||
when: ansible_os_family == 'Debian'
|
|
||||||
|
|
||||||
- name: Ensure Docker's APT key is trusted (Debian)
|
|
||||||
apt_key:
|
|
||||||
url: https://download.docker.com/linux/ubuntu/gpg
|
|
||||||
id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
|
|
||||||
state: present
|
|
||||||
register: add_repository_key
|
|
||||||
ignore_errors: true
|
|
||||||
when: ansible_os_family == 'Debian' and 'docker.io' not in ansible_facts.packages
|
|
||||||
|
|
||||||
- name: Ensure Docker repository is enabled (Debian)
|
|
||||||
apt_repository:
|
|
||||||
repo: "deb [arch=amd64] https://download.docker.com/linux/{{ ansible_distribution|lower }} {{ ansible_distribution_release }} stable"
|
|
||||||
state: present
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_os_family == 'Debian' and 'docker.io' not in ansible_facts.packages
|
|
||||||
|
|
||||||
- name: Ensure APT packages are installed (Debian)
|
|
||||||
apt:
|
|
||||||
name:
|
|
||||||
- bash-completion
|
|
||||||
- python-docker
|
|
||||||
- ntp
|
|
||||||
- fuse
|
|
||||||
state: latest
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_os_family == 'Debian'
|
|
||||||
|
|
||||||
- name: Ensure docker-ce is installed (Debian)
|
|
||||||
apt:
|
|
||||||
name:
|
|
||||||
- docker-ce
|
|
||||||
state: latest
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_os_family == 'Debian' and 'docker.io' not in ansible_facts.packages
|
|
||||||
|
|
||||||
- name: Ensure Docker is started and autoruns
|
|
||||||
service:
|
|
||||||
name: docker
|
|
||||||
state: started
|
|
||||||
enabled: yes
|
|
||||||
|
|
||||||
- name: Ensure ntpd is started and autoruns
|
|
||||||
service:
|
|
||||||
name: "{{ 'ntpd' if ansible_os_family == 'RedHat' else 'ntp' }}"
|
|
||||||
state: started
|
|
||||||
enabled: yes
|
|
Loading…
Reference in a new issue