From f6335e4cbe68c524424651c704ac1089beccb5e7 Mon Sep 17 00:00:00 2001 From: Sergey Gripinskiy Date: Sat, 11 Sep 2021 19:52:48 +0300 Subject: [PATCH] feat: docker-compose command-line completion Added: - docker-compose comman-line completion installation. Updated: - docker-compose updated from 1.26.0 to 1.29.2. --- README.md | 2 +- defaults/main.yml | 4 +++- tasks/docker-compose.yml | 16 ++++++++++++++-- 3 files changed, 18 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 47b0857..36a9d90 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ You can control whether the package is installed, uninstalled, or at the latest Variables to control the state of the `docker` service, and whether it should start on boot. If you're installing Docker inside a Docker container without systemd or sysvinit, you should set these to `stopped` and set the enabled variable to `no`. docker_install_compose: true - docker_compose_version: "1.26.0" + docker_compose_version: "1.29.2" docker_compose_path: /usr/local/bin/docker-compose Docker Compose installation options. diff --git a/defaults/main.yml b/defaults/main.yml index 1b9de37..1d3c0b8 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -11,9 +11,11 @@ docker_restart_handler_state: restarted # Docker Compose options. docker_install_compose: true -docker_compose_version: "1.26.0" +docker_compose_version: "1.29.2" 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 +docker_compose_completion_url: https://raw.githubusercontent.com/docker/compose/{{ docker_compose_version }}/contrib/completion/bash/docker-compose +docker_compose_completion_path: /etc/bash_completion.d/docker-compose # Docker repo URL. docker_repo_url: https://download.docker.com/linux diff --git a/tasks/docker-compose.yml b/tasks/docker-compose.yml index 1dee81d..ca2de94 100644 --- a/tasks/docker-compose.yml +++ b/tasks/docker-compose.yml @@ -5,10 +5,13 @@ changed_when: false failed_when: false -- name: Delete existing docker-compose version if it's different. +- name: Delete existing docker-compose version with its command-line completion if it's different. file: - path: "{{ docker_compose_path }}" + path: "{{ item }}" state: absent + loop: + - "{{ docker_compose_path }}" + - "{{ docker_compose_completion_path }}" when: > docker_compose_current_version.stdout is defined and docker_compose_version not in docker_compose_current_version.stdout @@ -21,3 +24,12 @@ when: > docker_compose_current_version.stdout is not defined or docker_compose_version not in docker_compose_current_version.stdout + +- name: Install Docker Compose command-line completion (if configured) + get_url: + url: "{{ docker_compose_completion_url }}" + dest: "{{ docker_compose_completion_path }}" + mode: 0644 + when: > + docker_compose_current_version.stdout is not defined + or docker_compose_version not in docker_compose_current_version.stdout