container-role/tasks/create_container.yml
2024-11-19 10:44:58 +01:00

60 lines
No EOL
2.2 KiB
YAML

---
- name: Pull needed image for {{ item.name }} (rootless)
containers.podman.podman_image:
name: "{{ item.image }}"
force: true # there is no other way to say "newer" :-/
become: true
become_user: "{{ item.rootless_user }}"
when: not item.rootless_user == ""
register: image_pull
- name: Pull needed image for {{ item.name }}
containers.podman.podman_image:
name: "{{ item.image }}"
become: true
register: image_pull
when: image_pull is not defined
- name: Print image pull var
ansible.builtin.debug:
var: image_pull
tags:
- never
- debug
- name: Re-create container for {{ item.name }} (rootless)
containers.podman.podman_container:
name: "{{ item.name | mandatory(msg='Name of container is required.') }}"
image: "{{ item.image | mandatory(msg='Image is required.')}}"
publish: "{{ item.publish | default(omit) }}"
expose: "{{ item.expose | default(omit) }}"
env: "{{ item.env | default(omit) }}"
dns: "{{ item.dns | default(omit) }}"
volume: "{{ item.volume | default(omit) }}"
restart_policy: "{{ item.restart_policy | default('unless-stopped') }}"
recreate: "{{ item.recreate | default(omit) }}"
network: "{{ item.network | default(omit) }}"
state: "{{ item.state | default('started') }}"
when:
- image_pull is changed or not containers_force_restart == ""
- not item.rootless_user == ""
become: true
become_user: "{{ item.rootless_user }}"
- name: Re-create container
containers.podman.podman_container:
name: "{{ item.name | mandatory(msg='Name of container is required.') }}"
image: "{{ item.image | mandatory(msg='Image is required.')}}"
publish: "{{ item.publish | default(omit) }}"
expose: "{{ item.expose | default(omit) }}"
env: "{{ item.env | default(omit) }}"
dns: "{{ item.dns | default(omit) }}"
volume: "{{ item.volume | default(omit) }}"
restart_policy: "{{ item.restart_policy | default('unless-stopped') }}"
recreate: "{{ item.recreate | default(omit) }}"
network: "{{ item.network | default(omit) }}"
state: "{{ item.state | default('started') }}"
when:
- image_pull is changed or not containers_force_restart == ""
- item.rootless_user == "" or not item.rootless_user is defined
become: true