diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..6a00f9f --- /dev/null +++ b/requirements.txt @@ -0,0 +1,5 @@ +yamllint +ansible +molecule +molecule-plugins[docker] +docker \ No newline at end of file diff --git a/requirements.yml b/requirements.yml new file mode 100644 index 0000000..afc836d --- /dev/null +++ b/requirements.yml @@ -0,0 +1,3 @@ +--- +collections: + - name: community.general diff --git a/tasks/setup-docker-compose.yml b/tasks/setup-docker-compose.yml new file mode 100644 index 0000000..ac2b443 --- /dev/null +++ b/tasks/setup-docker-compose.yml @@ -0,0 +1,33 @@ +--- +- name: Check current docker-compose version. + ansible.builtin.command: "{{ docker_compose_path }} --version" + register: docker_compose_vsn + check_mode: false + changed_when: false + failed_when: false + +- name: Set Docker Compose Current Version + ansible.builtin.set_fact: + docker_compose_current_version: "{{ docker_compose_vsn.stdout | regex_search('(\\d+(\\.\\d+)+)') }}" + when: > + docker_compose_vsn.stdout is defined + and (docker_compose_vsn.stdout | length > 0) + +- name: Delete existing docker-compose version if it's different. + ansible.builtin.file: + path: "{{ docker_compose_path }}" + state: absent + when: > + docker_compose_current_version is defined + and (docker_compose_version | regex_replace('v', '')) not in docker_compose_current_version + +- name: Install Docker Compose (if configured). + ansible.builtin.get_url: + url: "{{ docker_compose_url }}" + dest: "{{ docker_compose_path }}" + mode: "0755" + environment: "{{ proxy_env | default({}) }}" + when: > + (docker_compose_current_version is not defined) + or (docker_compose_current_version | length == 0) + or (docker_compose_current_version is version((docker_compose_version | regex_replace('v', '')), '<'))