From a977b06b7bbaeae718b6163e36147c30182a56d8 Mon Sep 17 00:00:00 2001 From: slicen Date: Fri, 12 Mar 2021 23:44:42 +1100 Subject: [PATCH 1/3] Adds option to configure docker-compose URL Necessary for installing from a local mirror or in an offline environmment. --- defaults/main.yml | 1 + tasks/docker-compose.yml | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/defaults/main.yml b/defaults/main.yml index 8d66047..32297f2 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -12,6 +12,7 @@ docker_restart_handler_state: restarted # Docker Compose options. docker_install_compose: true docker_compose_version: "1.26.0" +docker_compose_url: https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-Linux-x86_64 docker_compose_path: /usr/local/bin/docker-compose # Used only for Debian/Ubuntu. Switch 'stable' to 'nightly' if needed. diff --git a/tasks/docker-compose.yml b/tasks/docker-compose.yml index 92cf4f2..27c788b 100644 --- a/tasks/docker-compose.yml +++ b/tasks/docker-compose.yml @@ -15,6 +15,6 @@ - name: Install Docker Compose (if configured). get_url: - url: https://github.com/docker/compose/releases/download/{{ docker_compose_version }}/docker-compose-Linux-x86_64 + url: "{{ docker_compose_url }}" dest: "{{ docker_compose_path }}" mode: 0755 From c2f737d5a259e4eeb5565b685041513589ee3c89 Mon Sep 17 00:00:00 2001 From: slicen Date: Fri, 12 Mar 2021 23:47:48 +1100 Subject: [PATCH 2/3] Only fetch docker-compose if current version is not the desired version --- tasks/docker-compose.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tasks/docker-compose.yml b/tasks/docker-compose.yml index 27c788b..1dee81d 100644 --- a/tasks/docker-compose.yml +++ b/tasks/docker-compose.yml @@ -1,6 +1,6 @@ --- - name: Check current docker-compose version. - command: docker-compose --version + command: "{{ docker_compose_path }} --version" register: docker_compose_current_version changed_when: false failed_when: false @@ -18,3 +18,6 @@ url: "{{ docker_compose_url }}" dest: "{{ docker_compose_path }}" mode: 0755 + when: > + docker_compose_current_version.stdout is not defined + or docker_compose_version not in docker_compose_current_version.stdout From 7c0c38ddf86d04f8086fa19c74c6e833e8e5040b Mon Sep 17 00:00:00 2001 From: slicen Date: Fri, 12 Mar 2021 23:48:54 +1100 Subject: [PATCH 3/3] Adds configuration option to point to Docker package mirror Useful in an offline environment to point to a docker.com mirror. --- defaults/main.yml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/defaults/main.yml b/defaults/main.yml index 32297f2..981218b 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -16,17 +16,18 @@ docker_compose_url: https://github.com/docker/compose/releases/download/{{ docke docker_compose_path: /usr/local/bin/docker-compose # Used only for Debian/Ubuntu. Switch 'stable' to 'nightly' if needed. +docker_repo_url: https://download.docker.com/linux 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 }}" +docker_apt_repository: "deb [arch={{ docker_apt_arch }}] {{ docker_repo_url }}/{{ ansible_distribution | lower }} {{ ansible_distribution_release }} {{ docker_apt_release_channel }}" docker_apt_ignore_key_error: true -docker_apt_gpg_key: https://download.docker.com/linux/{{ ansible_distribution | lower }}/gpg +docker_apt_gpg_key: "{{ docker_repo_url }}/{{ ansible_distribution | lower }}/gpg" # Used only for RedHat/CentOS/Fedora. -docker_yum_repo_url: https://download.docker.com/linux/{{ (ansible_distribution == "Fedora") | ternary("fedora","centos") }}/docker-{{ docker_edition }}.repo +docker_yum_repo_url: "{{ docker_repo_url }}/{{ (ansible_distribution == 'Fedora') | ternary('fedora','centos') }}/docker-{{ docker_edition }}.repo" docker_yum_repo_enable_nightly: '0' docker_yum_repo_enable_test: '0' -docker_yum_gpg_key: https://download.docker.com/linux/centos/gpg +docker_yum_gpg_key: "{{ docker_repo_url }}/centos/gpg" # A list of users who will be added to the docker group. docker_users: []