60 lines
No EOL
2.2 KiB
YAML
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 |