--- - name: Update Coolify configuration files ansible.builtin.get_url: url: "https://cdn.coollabs.io/coolify/{{ item.file }}" dest: "{{ coolify_base_dir }}/source/{{ item.dest }}" mode: "0644" owner: "{{ coolify_owner }}" group: "{{ coolify_group }}" loop: - { file: "docker-compose.yml", dest: "docker-compose.yml" } - { file: "docker-compose.prod.yml", dest: "docker-compose.prod.yml" } - { file: "upgrade.sh", dest: "upgrade.sh" } tags: coolify, files, update - name: Ensure Coolify environment configuration exists ansible.builtin.include_tasks: configure.yaml tags: coolify, configuration, update - name: Update Coolify services (pull and recreate) become: true community.docker.docker_compose_v2: project_src: "{{ coolify_base_dir }}/source" files: "{{ coolify_compose_files }}" pull: always state: present recreate: always wait: true wait_timeout: 300 tags: coolify, docker, update - name: Wait for Coolify HTTP to respond after update ansible.builtin.uri: url: "http://localhost:{{ coolify_http_port }}" method: GET status_code: 200 timeout: 30 body_format: json register: coolify_health_after_update until: coolify_health_after_update.status == 200 retries: 20 delay: 15 tags: coolify, update, health - name: Show update success message ansible.builtin.debug: msg: - "Coolify updated successfully to latest version" - "Services have been recreated with latest images and config" - "Access at: http://{{ ansible_host }}:{{ coolify_http_port }}" tags: coolify, update