---
# Install HTTPS support for APT
- name: Install apt-transport-https
  apt:
    update_cache: true
    name:
      - apt-transport-https
      - ca-certificates
      - curl
      - gnupg2
      - software-properties-common
    state: present
  register: apt_result
  retries: 3
  until: apt_result is succeeded

# Add the key
- name: Configure the apt key
  apt_key:
    url: https://download.docker.com/linux/debian/gpg
    id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
    state: present
  register: apt_key_result
  retries: 3
  until: apt_key_result is succeeded

# Add the repository into source list
- name: Configure docker repository
  apt_repository:
    repo: "{{ item }}"
    state: present
  loop:
    - deb https://download.docker.com/linux/debian buster stable

- name: Install docker
  apt:
    update_cache: true
    name:
      - docker-ce
      - docker-ce-cli
      - containerd.io
    state: present
  register: apt_result
  retries: 3
  until: apt_result is succeeded

# Compose need to be updated to use new Docker features
- name: Install Docker Compose
  get_url:
    url: https://github.com/docker/compose/releases/download/1.24.1/docker-compose-Linux-x86_64
    dest: /usr/local/bin/docker-compose
    mode: "0755"
...