--- - name: "Copy rendered templates for {{ service_name }}" ansible.builtin.import_tasks: copy-rendered-templates-recursive.yml become: true vars: owner: "{{ service_owner | default('1000') }}" mode: "{{ file_mode | default('777') }}" render_dir: "{{ template_render_dir }}" destination_dir: "{{ service_destination_dir }}" - name: "Ensure {{ service_name }} service is enabled and started" become: true ansible.builtin.systemd_service: state: "{{ state | default('restarted') }}" enabled: true daemon_reload: true name: "docker-compose@{{ service_name }}" - name: "Perform rollout for {{ service_name }}" become: true with_items: "{{ rollout_services | default([]) }}" ansible.builtin.shell: cmd: "/usr/local/bin/docker-rollout rollout -f docker-compose.yml {{ item.rollout_extra_args | default('') }} {{ item.name }}" chdir: "{{ service_destination_dir }}" register: rollout_result when: not homelab_build changed_when: "'Waiting for new containers to be healthy' in rollout_result.stdout" failed_when: rollout_result.rc != 0 or 'Rolling back.' in rollout_result.stdout