--- - name: gather os specific variables include_vars: "{{ item }}" with_first_found: - files: - "{{ ansible_distribution|lower }}-{{ ansible_distribution_version|lower|replace('/', '_') }}.yml" - "{{ ansible_distribution|lower }}-{{ ansible_distribution_release }}.yml" - "{{ ansible_distribution|lower }}-{{ ansible_distribution_major_version|lower|replace('/', '_') }}.yml" - "{{ ansible_distribution|lower }}.yml" - "{{ ansible_os_family|lower }}.yml" - defaults.yml paths: - ../vars - name: check for minimum kernel version fail: msg: > docker requires a minimum kernel version of {{ docker_kernel_min_version }} on {{ ansible_distribution }}-{{ ansible_distribution_version }} when: ansible_kernel|version_compare(docker_kernel_min_version, "<") - name: ensure docker requirements packages are installed action: "{{ docker_package_info.pkg_mgr }}" args: name: "{{item}}" state: latest update_cache: yes with_items: docker_package_info.pre_pkgs when: docker_package_info.pre_pkgs|length > 0 - name: ensure docker repository public key is installed action: "{{ docker_repo_key_info.pkg_key }}" args: id: "{{item}}" keyserver: "{{docker_repo_key_info.keyserver}}" state: present with_items: docker_repo_key_info.repo_keys - name: ensure docker repository is enabled action: "{{ docker_repo_info.pkg_repo }}" args: repo: "{{item}}" update_cache: yes state: present with_items: docker_repo_info.repos when: docker_repo_info.repos|length > 0 - name: ensure docker packages are installed action: "{{ docker_package_info.pkg_mgr }}" args: pkg: "{{item}}" update_cache: yes state: latest with_items: docker_package_info.pkgs when: docker_package_info.pkgs|length > 0 - name: ensure docker service is started and enabled service: name: "{{ item }}" enabled: yes state: started with_items: - docker