--- - name: Set redis service name ansible.builtin.set_fact: redis_service: "immich" redis_subuid: "100998" - name: Create redis_immich directory ansible.builtin.file: path: "{{ node['home_path'] }}/{{ item }}" state: "directory" owner: "{{ redis_subuid }}" group: "svadmins" mode: "0770" loop: - "containers/redis" - "containers/redis/{{ redis_service }}" - "containers/redis/{{ redis_service }}/data" become: true - name: Deploy redis config file ansible.builtin.template: src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/app/redis/redis.conf.j2" dest: "{{ node['home_path'] }}/containers/redis/{{ redis_service }}/redis.conf" owner: "{{ ansible_user }}" group: "svadmins" mode: "0644" - name: Deploy redis container file ansible.builtin.template: src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/app/redis/redis.container.j2" dest: "{{ node['home_path'] }}/.config/containers/systemd/redis_{{ redis_service }}.container" owner: "{{ ansible_user }}" group: "svadmins" mode: "0644" register: "is_redis_conf" - name: Enable (Restart) redis service ansible.builtin.systemd: name: "redis_{{ redis_service }}.service" state: "restarted" enabled: true daemon_reload: true scope: "user" when: is_redis_conf.changed # noqa: no-handler - name: Add user in video, render group ansible.builtin.user: name: "{{ ansible_user }}" state: "present" groups: "video, render" append: true become: true - name: Create immich directory ansible.builtin.file: path: "{{ node['home_path'] }}/{{ item }}" state: "directory" owner: "{{ ansible_user }}" group: "svadmins" mode: "0770" loop: - "data/containers/immich" - "containers/immich" - "containers/immich/ssl" - "containers/immich/ml" - "containers/immich/ml/cache" - name: Deploy root certificate ansible.builtin.copy: content: | {{ hostvars['console']['ca']['root']['crt'] }} dest: "{{ node['home_path'] }}/containers/immich/ssl/ilnmors_root_ca.crt" owner: "{{ ansible_user }}" group: "svadmins" mode: "0440" notify: "notification_restart_immich" no_log: true - name: Register secret value to podman secret containers.podman.podman_secret: name: "IMMICH_DB_PASSWORD" data: "{{ hostvars['console']['postgresql']['password']['immich'] }}" state: "present" force: true notify: "notification_restart_immich" no_log: true - name: Deploy immich.container file ansible.builtin.template: src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/app/immich/immich.container.j2" dest: "{{ node['home_path'] }}/.config/containers/systemd/immich.container" owner: "{{ ansible_user }}" group: "svadmins" mode: "0644" notify: "notification_restart_immich" - name: Deploy immich-ml.container file ansible.builtin.template: src: "{{ hostvars['console']['node']['config_path'] }}/services/containers/app/immich/immich-ml.container.j2" dest: "{{ node['home_path'] }}/.config/containers/systemd/immich-ml.container" owner: "{{ ansible_user }}" group: "svadmins" mode: "0644" notify: "notification_restart_immich-ml" - name: Enable immich.service ansible.builtin.systemd: name: "immich.service" state: "started" enabled: true daemon_reload: true scope: "user" - name: Enable immich-ml.service ansible.builtin.systemd: name: "immich-ml.service" state: "started" enabled: true daemon_reload: true scope: "user"