Enable docker for CentOS >= 7 and Fedora >= 30
This commit is contained in:
		@@ -1,2 +1,87 @@
 | 
				
			|||||||
---
 | 
					---
 | 
				
			||||||
# tasks file for ensure_docker
 | 
					# tasks file for ensure_docker
 | 
				
			||||||
 | 
					- name: 'include variables'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system == 'Linux'
 | 
				
			||||||
 | 
					  include_vars:
 | 
				
			||||||
 | 
					    file: '{{ lookup("first_found", findme ) }}'
 | 
				
			||||||
 | 
					    name: 'ensure_docker'
 | 
				
			||||||
 | 
					  vars:
 | 
				
			||||||
 | 
					    findme:
 | 
				
			||||||
 | 
					      files:
 | 
				
			||||||
 | 
					        - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml'
 | 
				
			||||||
 | 
					        - '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}-default.yml'
 | 
				
			||||||
 | 
					        - '{{ ansible_distribution }}-default.yml'
 | 
				
			||||||
 | 
					        - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-{{ ansible_architecture }}.yml'
 | 
				
			||||||
 | 
					        - '{{ ansible_os_family }}-{{ ansible_distribution_major_version }}-default.yml'
 | 
				
			||||||
 | 
					        - '{{ ansible_os_family }}-default.yml'
 | 
				
			||||||
 | 
					        - 'default.yml'
 | 
				
			||||||
 | 
					      paths:
 | 
				
			||||||
 | 
					        - '../vars/'
 | 
				
			||||||
 | 
					      errors: 'ignore'
 | 
				
			||||||
 | 
					- name: 'package discovery'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system == 'Linux'
 | 
				
			||||||
 | 
					    - packages is not defined
 | 
				
			||||||
 | 
					  ansible.builtin.package_facts:
 | 
				
			||||||
 | 
					- name: 'service discovery'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system == 'Linux'
 | 
				
			||||||
 | 
					    - services is not defined
 | 
				
			||||||
 | 
					  ansible.builtin.service_facts:
 | 
				
			||||||
 | 
					- name: 'ensure packages'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system == 'Linux'
 | 
				
			||||||
 | 
					    - ensure_docker is defined
 | 
				
			||||||
 | 
					    - ensure_docker.package_list is defined
 | 
				
			||||||
 | 
					    - ensure_docker.package_list is iterable
 | 
				
			||||||
 | 
					    - packages[item.name] is not defined
 | 
				
			||||||
 | 
					  ansible.builtin.package:
 | 
				
			||||||
 | 
					    name: '{{ item.name }}'
 | 
				
			||||||
 | 
					    state: '{{ item.state }}'
 | 
				
			||||||
 | 
					  loop: '{{ ensure_docker.package_list }}'
 | 
				
			||||||
 | 
					  loop_control:
 | 
				
			||||||
 | 
					    label: '{{ item.name }} will be {{ item.state }}'
 | 
				
			||||||
 | 
					  notify:
 | 
				
			||||||
 | 
					    - 'ensure_docker.package_facts'
 | 
				
			||||||
 | 
					    - 'ensure_docker.service_facts'
 | 
				
			||||||
 | 
					- name: 'ensure services'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system == 'Linux'
 | 
				
			||||||
 | 
					    - ensure_docker is defined
 | 
				
			||||||
 | 
					    - ensure_docker.service_list is defined
 | 
				
			||||||
 | 
					    - ensure_docker.service_list is iterable
 | 
				
			||||||
 | 
					  ansible.builtin.service:
 | 
				
			||||||
 | 
					    enabled: '{{ item.enabled }}'
 | 
				
			||||||
 | 
					    name: '{{ item.name }}'
 | 
				
			||||||
 | 
					    state: '{{ item.state }}'
 | 
				
			||||||
 | 
					  loop: '{{ ensure_docker.service_list }}'
 | 
				
			||||||
 | 
					  loop_control:
 | 
				
			||||||
 | 
					    label: '{{ item.name }} will be {{ item.state }}'
 | 
				
			||||||
 | 
					  notify:
 | 
				
			||||||
 | 
					    - 'ensure_docker.package_facts'
 | 
				
			||||||
 | 
					    - 'ensure_docker.service_facts'
 | 
				
			||||||
 | 
					- name: 'Fetch kernel command line'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - ansible_system = 'Linux'
 | 
				
			||||||
 | 
					    - ensure_docker is defined
 | 
				
			||||||
 | 
					    - ansible_distribution == 'Fedora'
 | 
				
			||||||
 | 
					    - ansible_distribution_major_version is version('32', '>=')
 | 
				
			||||||
 | 
					  shell: |
 | 
				
			||||||
 | 
					    cat /proc/cmdline
 | 
				
			||||||
 | 
					  register: 'results'
 | 
				
			||||||
 | 
					  changed_when: 'false'
 | 
				
			||||||
 | 
					- name: 'Add cgroups v1 if disabled'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - results is defined
 | 
				
			||||||
 | 
					    - ' "systemd.unified_cgroup_hierarchy=0" not in results.stdout '
 | 
				
			||||||
 | 
					  shell:
 | 
				
			||||||
 | 
					    cmd: |
 | 
				
			||||||
 | 
					      grubby --update-kernel=ALL --args=systemd.unified_cgroup_hierarchy=0
 | 
				
			||||||
 | 
					- name: 'Reboot to enable cgroups v1'
 | 
				
			||||||
 | 
					  when:
 | 
				
			||||||
 | 
					    - results is defined
 | 
				
			||||||
 | 
					    - ' "systemd.unified_cgroup_hierarchy=0" not in results.stdout '
 | 
				
			||||||
 | 
					  reboot:
 | 
				
			||||||
 | 
					- name: 'flush handlers'
 | 
				
			||||||
 | 
					  meta: 'flush_handlers'
 | 
				
			||||||
 
 | 
				
			|||||||
							
								
								
									
										11
									
								
								vars/CentOS-7.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								vars/CentOS-7.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										11
									
								
								vars/CentOS-8.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								vars/CentOS-8.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										13
									
								
								vars/Fedora-30.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								vars/Fedora-30.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'cockpit-docker'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										13
									
								
								vars/Fedora-31.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										13
									
								
								vars/Fedora-31.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,13 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'cockpit-docker'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										11
									
								
								vars/Fedora-32.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								vars/Fedora-32.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										11
									
								
								vars/Fedora-33.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										11
									
								
								vars/Fedora-33.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,11 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
 | 
					package_list:
 | 
				
			||||||
 | 
					  - name: 'docker-compose'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					  - name: 'moby-engine'
 | 
				
			||||||
 | 
					    state: 'present'
 | 
				
			||||||
 | 
					service_list:
 | 
				
			||||||
 | 
					  - name: 'docker.socket'
 | 
				
			||||||
 | 
					    state: 'started'
 | 
				
			||||||
 | 
					    enabled: 'yes'
 | 
				
			||||||
							
								
								
									
										2
									
								
								vars/default.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										2
									
								
								vars/default.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,2 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					# vars file for ensure_docker
 | 
				
			||||||
		Reference in New Issue
	
	Block a user