--- - name: Checking internet connection uri: url: "https://hub.andrewalliance.com" register: pingresult until: - pingresult.status == 200 retries: 3 # 3 * 5 seconds = 15s delay: 5 # Every 5 seconds when: (docker_images_tar is undefined) or (not docker_images_tar.stat.exists) - name: Getting current logged-in user shell: whoami register: login_user - debug: var=login_user.stdout # User running the process may have to enter their sudo password at this step - name: Checking if the logged-in user has sudo privileges shell: sudo whoami register: sudo_check failed_when: sudo_check.stdout != "root" - name: Checking Ansible debug: msg: "{{ item }}" with_items: - "{{ ansible_distribution }}" - "{{ ansible_distribution_version }}" - "{{ ansible_distribution_major_version }}" - name: Checking Docker version shell: docker -v | cut -d ' ' -f 3 | cut -d ',' -f 1 become: true register: docker_version - debug: var=docker_version.stdout # workaround: add a dumb failed condition to avoid any failure here as the service is maybe not installed/existing - name: Check if "docker compose" is available shell: docker compose version become: true register: docker_compose_check failed_when: "'FAILED' in docker_compose_check.stderr" - name: Set the compose command to "docker compose" set_fact: compose_command: "docker compose" when: docker_compose_check.rc == 0 - name: Fallback to "docker-compose" if "docker compose" is not available set_fact: compose_command: "docker-compose" when: docker_compose_check.rc != 0 - name: Checking Docker Compose version shell: "{{ compose_command }} version" become: true register: compose_version_output - debug: var=compose_version_output.stdout - name: Checking tar pacakge shell: tar --usage become: true - name: Checking unzip pacakge shell: unzip become: true - name: Checking openssl package shell: openssl become: true