---
- name: Install Docker Dependencies 
  yum: name={{ item }} state=latest update_cache=yes
  with_items:
    - yum-utils
    - device-mapper-persistent-data
    - lvm2
  when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'

- name: Add Docker Yum Repo
  get_url:
    url: https://download.docker.com/linux/centos/docker-ce.repo
    dest: /etc/yum.repos.d/docker-ce.repo
  when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'

- name: Install Docker
  yum:
    name:
      - docker-ce
      - docker-ce-cli
      - containerd.io
    state: latest
  when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'

- name: Start Docker Service
  service:
    name: docker
    state: started
    enabled: yes
  when: ansible_distribution == 'CentOS' or ansible_distribution == 'Red Hat Enterprise Linux'

- name: Install Docker Dependencies 
  apt: name={{ item }} state=latest update_cache=yes
  with_items:
    - apt-transport-https
    - ca-certificates
    - software-properties-common
  when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'

- name: Add Docker GPG key
  apt_key:
    url: https://download.docker.com/linux/ubuntu/gpg
    state: present
  when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'

- name: Add Docker Apt Repo
  apt_repository:
    repo: deb https://download.docker.com/linux/ubuntu bionic stable
    state: present
  when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'

- name: Install Docker
  apt:
    update_cache: yes
    state: latest
    name:
    - docker-ce
    - docker-ce-cli
    - containerd.io
  when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'

- name: Install 'Docker SDK for Python'
  pip:
    name: docker
