--- - name: Create Mealie directory structure file: path: "{{ item }}" state: directory mode: 0755 loop: - "{{ mealie_base_dir }}" - "{{ mealie_data_dir }}" tags: deploy_mealie - name: Set proper ownership for Mealie data directory file: path: "{{ mealie_data_dir }}" owner: "1000" group: "1000" recurse: yes tags: deploy_mealie - name: Deploy Mealie docker-compose.yml template: src: docker-compose.yml.j2 dest: "{{ mealie_base_dir }}/docker-compose.yml" mode: 0644 tags: deploy_mealie - name: Pull Mealie Docker images shell: | cd {{ mealie_base_dir }} docker compose pull --ignore-pull-failures args: executable: /bin/bash tags: deploy_mealie ignore_errors: yes - name: Start Mealie container shell: | cd {{ mealie_base_dir }} docker compose up -d args: executable: /bin/bash tags: deploy_mealie - name: Wait for Mealie to initialize pause: seconds: 30 tags: deploy_mealie - name: Check Mealie container status shell: docker ps --filter name=mealie --format "table {% raw %}{{.Names}}\t{{.Status}}\t{{.Ports}}{% endraw %}" register: mealie_status changed_when: false tags: deploy_mealie - name: Show Mealie status debug: var: mealie_status.stdout tags: deploy_mealie - name: Check Mealie startup logs shell: | cd {{ mealie_base_dir }} docker compose logs --tail=20 mealie register: mealie_logs failed_when: false tags: deploy_mealie - name: Show Mealie logs debug: var: mealie_logs.stdout tags: deploy_mealie