- hosts: all | |
tasks: | |
- name: Ensure folder for Docker configuration | |
ansible.builtin.file: | |
path: "{{ ansible_env.HOME }}/.docker" | |
state: directory | |
- name: Build images using Bake | |
block: | |
- name: Login to Docker registry | |
no_log: true | |
ansible.builtin.copy: | |
content: "{{ depot_bake_docker_config }}" | |
dest: "{{ ansible_env.HOME }}/.docker/config.json" | |
mode: 0600 | |
vars: | |
depot_bake_docker_config: | | |
{ | |
"auths": { | |
"{{ depot_bake_registry.host }}{% if depot_bake_registry.port != 443 %}:{{ depot_bake_registry.port }}{% endif %}": { | |
"auth": "{{ (depot_bake_registry.username + ':' + depot_bake_registry.password) | b64encode }}" | |
} | |
} | |
} | |
- name: Run "depot bake" | |
ansible.builtin.include_role: | |
name: depot-bake | |
always: | |
- name: Delete Docker configuration | |
ansible.builtin.command: "shred {{ ansible_env.HOME }}/.docker/config.json" |