From 89453cd53b6c58fe962c6be51e53d9bac9f41e8f Mon Sep 17 00:00:00 2001 From: Marty Oehme Date: Sat, 24 Jul 2021 16:01:56 +0200 Subject: [PATCH] Add docker installation role --- roles/docker/tasks/Ubuntu.yml | 47 +++++++++++++++++++++++++++++++++++ roles/docker/tasks/main.yml | 11 ++++++++ roles/docker/vars/main.yml | 11 ++++++++ 3 files changed, 69 insertions(+) create mode 100644 roles/docker/tasks/Ubuntu.yml create mode 100644 roles/docker/tasks/main.yml create mode 100644 roles/docker/vars/main.yml diff --git a/roles/docker/tasks/Ubuntu.yml b/roles/docker/tasks/Ubuntu.yml new file mode 100644 index 0000000..ab9ecc9 --- /dev/null +++ b/roles/docker/tasks/Ubuntu.yml @@ -0,0 +1,47 @@ +- name: Ensure requirements installed + ansible.builtin.package: + name: "{{ requisites }}" + state: present + update_cache: yes + tags: + - apt + - download + - packages + become: true + +- name: Ensure docker GPG apt key exists + apt_key: + url: https://download.docker.com/linux/ubuntu/gpg + state: present + tags: + - apt + - repository + become: true + +- name: Ensure docker repository exists + apt_repository: + repo: deb https://download.docker.com/linux/ubuntu focal stable + state: present + tags: + - apt + - repository + become: true + +- name: Ensure latest docker-ce installed + ansible.builtin.package: + name: "{{ packages }}" + state: latest + tags: + - apt + - download + - packages + become: true + +- name: Ensure docker module for python installed + pip: + name: docker + tags: + - pip + - python + - packages + become: true diff --git a/roles/docker/tasks/main.yml b/roles/docker/tasks/main.yml new file mode 100644 index 0000000..d8a1984 --- /dev/null +++ b/roles/docker/tasks/main.yml @@ -0,0 +1,11 @@ +--- +# Bring docker on the system and up to date + +- name: "Select tasks for {{ ansible_distribution }} {{ ansible_distribution_major_version }}" + include_tasks: "{{ distribution }}" + with_first_found: + - "{{ ansible_distribution }}-{{ ansible_distribution_major_version }}.yml" + - "{{ ansible_distribution }}.yml" + - "{{ ansible_os_family }}.yml" + loop_control: + loop_var: distribution diff --git a/roles/docker/vars/main.yml b/roles/docker/vars/main.yml new file mode 100644 index 0000000..adda604 --- /dev/null +++ b/roles/docker/vars/main.yml @@ -0,0 +1,11 @@ +requisites: + - apt-transport-https + - ca-certificates + - curl + - software-properties-common + - python3-pip + - python3-setuptools + - virtualenv + +packages: + - docker-ce