From 5a35c061731e6a7025ac55a6fc5e320986eae54b Mon Sep 17 00:00:00 2001 From: sciCORE Date: Thu, 30 Apr 2020 13:13:38 +0200 Subject: [PATCH] make optional to add the official docker repos --- defaults/main.yml | 4 ++++ tasks/setup-Debian.yml | 47 +++++++++++++++++++++----------------- tasks/setup-RedHat.yml | 51 +++++++++++++++++++++++------------------- 3 files changed, 58 insertions(+), 44 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index ba5ba8a..067e0b5 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -15,6 +15,8 @@ docker_compose_version: "1.25.4" docker_compose_path: /usr/local/bin/docker-compose # Used only for Debian/Ubuntu. Switch 'stable' to 'edge' if needed. +docker_apt_add_official_repository: true +# options below apply if you add the official repo using this role (which is the default) docker_apt_release_channel: stable docker_apt_arch: amd64 docker_apt_repository: "deb [arch={{ docker_apt_arch }}] https://download.docker.com/linux/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}" @@ -22,6 +24,8 @@ docker_apt_ignore_key_error: true docker_apt_gpg_key: https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg # Used only for RedHat/CentOS/Fedora. +docker_yum_add_official_repository: true +# options below apply if you add the official repo using this role (which is the default) docker_yum_repo_url: https://download.docker.com/linux/{{ (ansible_distribution == "Fedora") | ternary("fedora","centos") }}/docker-{{ docker_edition }}.repo docker_yum_repo_enable_edge: '0' docker_yum_repo_enable_test: '0' diff --git a/tasks/setup-Debian.yml b/tasks/setup-Debian.yml index d701135..3064267 100644 --- a/tasks/setup-Debian.yml +++ b/tasks/setup-Debian.yml @@ -14,27 +14,32 @@ - gnupg2 state: present -- name: Add Docker apt key. - apt_key: - url: "{{ docker_apt_gpg_key }}" - id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 - state: present - register: add_repository_key - ignore_errors: "{{ docker_apt_ignore_key_error }}" +- name: Add official docker apt repository + block: -- name: Ensure curl is present (on older systems without SNI). - package: name=curl state=present - when: add_repository_key is failed + - name: Add Docker apt key. + apt_key: + url: "{{ docker_apt_gpg_key }}" + id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88 + state: present + register: add_repository_key + ignore_errors: "{{ docker_apt_ignore_key_error }}" -- name: Add Docker apt key (alternative for older systems without SNI). - shell: > - curl -sSL {{ docker_apt_gpg_key }} | sudo apt-key add - - args: - warn: false - when: add_repository_key is failed + - name: Ensure curl is present (on older systems without SNI). + package: name=curl state=present + when: add_repository_key is failed -- name: Add Docker repository. - apt_repository: - repo: "{{ docker_apt_repository }}" - state: present - update_cache: true + - name: Add Docker apt key (alternative for older systems without SNI). + shell: > + curl -sSL {{ docker_apt_gpg_key }} | sudo apt-key add - + args: + warn: false + when: add_repository_key is failed + + - name: Add Docker repository. + apt_repository: + repo: "{{ docker_apt_repository }}" + state: present + update_cache: true + + when: docker_apt_add_official_repository diff --git a/tasks/setup-RedHat.yml b/tasks/setup-RedHat.yml index 800c0bc..c815d66 100644 --- a/tasks/setup-RedHat.yml +++ b/tasks/setup-RedHat.yml @@ -7,32 +7,37 @@ - docker-engine state: absent -- name: Add Docker GPG key. - rpm_key: - key: "{{ docker_yum_gpg_key }}" - state: present +- name: Add official docker yum repository + block: -- name: Add Docker repository. - get_url: - url: "{{ docker_yum_repo_url }}" - dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' - owner: root - group: root - mode: 0644 + - name: Add Docker GPG key. + rpm_key: + key: "{{ docker_yum_gpg_key }}" + state: present -- name: Configure Docker Edge repo. - ini_file: - dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' - section: 'docker-{{ docker_edition }}-edge' - option: enabled - value: '{{ docker_yum_repo_enable_edge }}' + - name: Add Docker repository. + get_url: + url: "{{ docker_yum_repo_url }}" + dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' + owner: root + group: root + mode: 0644 -- name: Configure Docker Test repo. - ini_file: - dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' - section: 'docker-{{ docker_edition }}-test' - option: enabled - value: '{{ docker_yum_repo_enable_test }}' + - name: Configure Docker Edge repo. + ini_file: + dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' + section: 'docker-{{ docker_edition }}-edge' + option: enabled + value: '{{ docker_yum_repo_enable_edge }}' + + - name: Configure Docker Test repo. + ini_file: + dest: '/etc/yum.repos.d/docker-{{ docker_edition }}.repo' + section: 'docker-{{ docker_edition }}-test' + option: enabled + value: '{{ docker_yum_repo_enable_test }}' + + when: docker_yum_add_official_repository - name: Install containerd separately (CentOS 8). package: