--- - name: Check if state is valid ansible.builtin.fail: msg: >-2 Unsupported state '{{ jellyfin_state }}'. Supported states are {{ jellyfin_states | join(', ') }}. when: jellyfin_state not in jellyfin_states - name: Check if deployment method is valid ansible.builtin.fail: msg: >-2 Unsupported state '{{ jellyfin_deployment_method }}'. Supported states are {{ jellyfin_deployment_methods | join(', ') }}. when: jellyfin_deployment_method not in jellyfin_deployment_methods - name: Ensure jellyfin user '{{ jellyfin_user }}' is {{ jellyfin_state }} ansible.builtin.user: name: "{{ jellyfin_user }}" state: "{{ jellyfin_state }}" system: "{{ jellyfin_user_system | default(true, true) }}" register: jellyfin_user_info - name: Ensure host directories for jellyfin are {{ jellyfin_state }} ansible.builtin.file: path: "{{ item.path }}" state: >-2 {{ (jellyfin_state == 'present') | ternary('directory', 'absent') }} owner: "{{ item.owner | default(jellyfin_uid) }}" group: "{{ item.group | default(jellyfin_gid) }}" mode: "{{ item.mode }}" loop: "{{ jellyfin_host_directories }}" - name: Ensure jellyfin is deployed using {{ jellyfin_deployment_method }} ansible.builtin.include_tasks: file: "deploy-{{ jellyfin_deployment_method }}.yml"