Add image role, support logging in to registries

This commit is contained in:
uumas
2025-04-10 19:27:16 +03:00
parent 093e7846ad
commit 3ac6b98a30
11 changed files with 105 additions and 5 deletions

View File

@@ -0,0 +1,4 @@
---
image_creds:
username: ""
password: ""

View File

@@ -0,0 +1,27 @@
---
argument_specs:
main:
description:
- Sets up podman image with systemd unit (quadlet)
- The image unit filename is `image_name` with / replaced by _
options:
image_name:
description: "The image FQIN (format registry/imagename:tag)"
type: str
required: true
image_creds:
description: Credentials used to authenticate with the registry
type: dict
required: false
default:
username: ""
password: ""
options:
username:
description: Username
type: str
required: true
password:
description: Password
type: str
required: true

View File

@@ -0,0 +1,3 @@
---
dependencies:
- role: podman

View File

@@ -0,0 +1,14 @@
---
- name: Set variables for use by other roles
ansible.builtin.set_fact:
image_created_images: "{{ image_created_images | default([]) + [image_name] }}"
- name: Create container image service {{ image_name }}
containers.podman.podman_image:
name: "{{ image_name }}"
username: "{{ image_creds.username if image_creds.username | length > 0 else omit }}"
password: "{{ image_creds.password if image_creds.password | length > 0 else omit }}"
state: quadlet
quadlet_filename: "{{ image_name | replace('/', '_') }}"
quadlet_file_mode: "0600"
notify: Reload systemd daemon