This commit is contained in:
2025-12-29 19:11:06 +01:00
parent 27bbd9621a
commit b902142c4b
10 changed files with 216 additions and 0 deletions

77
tasks/main.yml Normal file
View File

@@ -0,0 +1,77 @@
- name: Install Podman packages
ansible.builtin.apt:
name:
- podman
- uidmap
- slirp4netns
- fuse-overlayfs
state: present
update_cache: true
- name: Create Immich config directory
ansible.builtin.file:
path: /etc/immich
state: directory
mode: "0750"
- name: Create Immich data directories
ansible.builtin.file:
path: "{{ item }}"
state: directory
owner: "{{ immich_container_uid }}"
group: "{{ immich_container_gid }}"
mode: "0750"
loop:
- "{{ immich_upload_location }}"
- "{{ immich_db_data_location }}"
- "{{ immich_redis_data_location }}"
- "{{ immich_model_cache_dir }}"
- name: Write Immich env file
ansible.builtin.template:
src: immich.env.j2
dest: "{{ immich_env_path }}"
mode: "0640"
- name: Write Postgres env file
ansible.builtin.template:
src: postgres.env.j2
dest: "{{ immich_postgres_env_path }}"
mode: "0640"
- name: Check Immich podman network
ansible.builtin.command: "podman network exists {{ immich_network_name }}"
register: immich_network_check
changed_when: false
failed_when: false
- name: Create Immich podman network
ansible.builtin.command: "podman network create {{ immich_network_name }}"
when: immich_network_check.rc != 0
- name: Install systemd unit files
ansible.builtin.template:
src: "{{ item.src }}"
dest: "/etc/systemd/system/{{ item.dest }}"
mode: "0644"
loop:
- { src: immich-redis.service.j2, dest: immich-redis.service }
- { src: immich-postgres.service.j2, dest: immich-postgres.service }
- { src: immich-server.service.j2, dest: immich-server.service }
- { src: immich-microservices.service.j2, dest: immich-microservices.service }
- { src: immich-machine-learning.service.j2, dest: immich-machine-learning.service }
when: item.dest != 'immich-machine-learning.service' or immich_machine_learning_enabled
notify: Reload systemd
- name: Enable and start Immich services
ansible.builtin.systemd:
name: "{{ item }}"
enabled: true
state: started
loop:
- immich-redis.service
- immich-postgres.service
- immich-server.service
- immich-microservices.service
- immich-machine-learning.service
when: item != 'immich-machine-learning.service' or immich_machine_learning_enabled