55 lines
1.6 KiB
YAML
55 lines
1.6 KiB
YAML
---
|
|
- name: Deploy latest Coolify compose files from templates
|
|
become: true
|
|
ansible.builtin.template:
|
|
src: "{{ item.src }}"
|
|
dest: "{{ coolify_base_dir }}/source/{{ item.dest }}"
|
|
owner: "{{ coolify_owner }}"
|
|
group: "{{ coolify_group }}"
|
|
mode: "0644"
|
|
loop:
|
|
- src: docker-compose.yml.j2
|
|
dest: docker-compose.yml
|
|
- src: docker-compose.prod.yml.j2
|
|
dest: docker-compose.prod.yml
|
|
loop_control:
|
|
label: "{{ item.dest }}"
|
|
register: _coolify_compose_updated
|
|
tags: coolify, files, update
|
|
|
|
- name: Ensure Coolify environment configuration is current
|
|
ansible.builtin.include_tasks: configure.yaml
|
|
tags: coolify, configuration, update
|
|
|
|
- name: Pull latest Coolify images and recreate services
|
|
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: "{{ coolify_compose_wait_timeout }}"
|
|
register: _coolify_update_result
|
|
tags: coolify, docker, update
|
|
|
|
- name: Wait for Coolify HTTP to respond after update
|
|
ansible.builtin.uri:
|
|
url: "http://localhost:{{ coolify_app_port }}"
|
|
method: GET
|
|
status_code: 200
|
|
timeout: 30
|
|
register: _coolify_health_after_update
|
|
until: _coolify_health_after_update.status == 200
|
|
retries: "{{ coolify_health_retries }}"
|
|
delay: "{{ coolify_health_delay }}"
|
|
tags: coolify, update, health
|
|
|
|
- name: Show update result
|
|
ansible.builtin.debug:
|
|
msg:
|
|
- "Coolify updated successfully to latest version"
|
|
- "Access at: http://{{ ansible_host }}:{{ coolify_app_port }}"
|
|
tags: coolify, update
|