Properly recreate systemd unit on container update
This commit is contained in:
parent
4fb455c6b4
commit
fd2052767d
3 changed files with 9 additions and 9 deletions
|
|
@ -1,3 +1,3 @@
|
||||||
---
|
---
|
||||||
changedetection_username: changedetection
|
changedetection_username: changedetection
|
||||||
changedetection_version: 0.45.21
|
changedetection_version: 0.45.23
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
---
|
---
|
||||||
- name: Reload systemd (daemon-reload)
|
- name: Reload systemd (daemon-reload)
|
||||||
become: true
|
become: true
|
||||||
become_user: "{{ actual_username }}"
|
become_user: "{{ container_user }}"
|
||||||
ansible.builtin.systemd_service:
|
ansible.builtin.systemd_service:
|
||||||
daemon_reload: true
|
daemon_reload: true
|
||||||
scope: user
|
scope: user
|
||||||
|
|
|
||||||
|
|
@ -37,6 +37,13 @@
|
||||||
containers.podman.podman_container:
|
containers.podman.podman_container:
|
||||||
name: "{{ podman_container_name }}"
|
name: "{{ podman_container_name }}"
|
||||||
state: absent
|
state: absent
|
||||||
|
- name: Make sure the systemd unit file isn't present
|
||||||
|
ansible.builtin.file:
|
||||||
|
path: "/home/{{ container_user }}/.config/systemd/user/container-{{ podman_container_name }}.service"
|
||||||
|
state: absent
|
||||||
|
notify: Reload systemd (daemon-reload)
|
||||||
|
- name: Flush handlers
|
||||||
|
ansible.builtin.meta: flush_handlers
|
||||||
- name: Map volumes to Podman accepted list
|
- name: Map volumes to Podman accepted list
|
||||||
ansible.builtin.set_fact:
|
ansible.builtin.set_fact:
|
||||||
volumes: "{{ volumes + ['/home/' + container_user + '/' + item.name + ':' + item.mnt] }}"
|
volumes: "{{ volumes + ['/home/' + container_user + '/' + item.name + ':' + item.mnt] }}"
|
||||||
|
|
@ -60,16 +67,9 @@
|
||||||
notify: Reload systemd (daemon-reload)
|
notify: Reload systemd (daemon-reload)
|
||||||
- name: Flush handlers
|
- name: Flush handlers
|
||||||
ansible.builtin.meta: flush_handlers
|
ansible.builtin.meta: flush_handlers
|
||||||
# On restarts this seems to be a bit buggy. Some manual waiting might be necessary and running:
|
|
||||||
# systemctl --user daemon-reload && systemctl --user start {{ service_name }}
|
|
||||||
# The retry also doesn't work as of yet. Seems that doing a daemon-reload and then refreshing the task seems to work
|
|
||||||
- name: Enable the newly created systemd service for user
|
- name: Enable the newly created systemd service for user
|
||||||
ansible.builtin.systemd:
|
ansible.builtin.systemd:
|
||||||
name: "container-{{ podman_container_name }}.service"
|
name: "container-{{ podman_container_name }}.service"
|
||||||
state: started
|
state: started
|
||||||
enabled: true
|
enabled: true
|
||||||
scope: user
|
scope: user
|
||||||
retries: 3
|
|
||||||
delay: 3
|
|
||||||
register: result
|
|
||||||
until: "'Error.EBUSY' not in result.msg"
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue