CI: improve Docker setup (#550)

* Cache has already been updated a few lines before.

* When skipping Docker cleanup, create flag to avoid the expensive part of the setup (including package manager cache update) to be run again.
This commit is contained in:
Felix Fontein 2023-01-08 22:21:59 +01:00 committed by GitHub
parent dc5af8985b
commit 134d32cae6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 44 additions and 32 deletions

View File

@ -35,7 +35,6 @@
apt: apt:
name: '{{ docker_packages if needs_docker_daemon else docker_cli_packages }}' name: '{{ docker_packages if needs_docker_daemon else docker_cli_packages }}'
state: present state: present
update_cache: true
always: always:
- name: Restore /usr/sbin/policy-rc.d (if needed) - name: Restore /usr/sbin/policy-rc.d (if needed)

View File

@ -14,6 +14,13 @@
- name: Detect whether we are running inside a container - name: Detect whether we are running inside a container
current_container_facts: current_container_facts:
- name: Look for marker whether Docker was already set up
stat:
path: /root/community.docker-docker-is-set-up
register: docker_setup_marker
- when: not docker_setup_marker.stat.exists
block:
- name: Determine whether Docker Daemon needs to be installed - name: Determine whether Docker Daemon needs to be installed
set_fact: set_fact:
needs_docker_daemon: '{{ not ansible_module_running_in_container }}' needs_docker_daemon: '{{ not ansible_module_running_in_container }}'
@ -49,6 +56,12 @@
state: started state: started
when: not ansible_module_running_in_container when: not ansible_module_running_in_container
- name: Set marker that Docker was already set up
file:
path: /root/community.docker-docker-is-set-up
state: touch
when: docker_skip_cleanup
# Detect docker API version # Detect docker API version
- name: Check Docker API version - name: Check Docker API version
command: "docker version -f {% raw %}'{{(index .Server.Components 0).Details.ApiVersion}}'{% endraw %}" command: "docker version -f {% raw %}'{{(index .Server.Components 0).Details.ApiVersion}}'{% endraw %}"