39 lines
1.8 KiB
YAML
39 lines
1.8 KiB
YAML
---
|
|
- name: Ensure source directory exists
|
|
ansible.builtin.file:
|
|
path: "{{ coolify_base_dir }}/source"
|
|
state: directory
|
|
owner: "{{ coolify_owner }}"
|
|
group: "{{ coolify_group }}"
|
|
mode: "0750"
|
|
tags: coolify, configuration
|
|
|
|
- name: Check if .env exists
|
|
ansible.builtin.stat:
|
|
path: "{{ coolify_base_dir }}/source/.env"
|
|
register: coolify_env_file
|
|
tags: coolify, configuration
|
|
|
|
- name: Generate missing secrets (only for new install)
|
|
ansible.builtin.set_fact:
|
|
coolify_app_key: "{{ coolify_app_key | default(lookup('password', '/dev/null length=32 chars=ascii_letters,digits'), true) }}"
|
|
coolify_db_password: "{{ coolify_db_password | default(lookup('password', '/dev/null length=32 chars=ascii_letters,digits'), true) }}"
|
|
coolify_redis_password: "{{ coolify_redis_password | default(lookup('password', '/dev/null length=32 chars=ascii_letters,digits'), true) }}"
|
|
coolify_pusher_app_key: "{{ coolify_pusher_app_key | default(lookup('password', '/dev/null length=32 chars=ascii_letters,digits'), true) }}"
|
|
coolify_pusher_app_secret: "{{ coolify_pusher_app_secret | default(lookup('password', '/dev/null length=32 chars=ascii_letters,digits'), true) }}"
|
|
coolify_app_id: "{{ coolify_app_id | default(lookup('password', '/dev/null length=16 chars=ascii_letters,digits'), true) }}"
|
|
coolify_pusher_app_id: "{{ coolify_pusher_app_id | default(lookup('password', '/dev/null length=16 chars=ascii_letters,digits'), true) }}"
|
|
when: not coolify_env_file.stat.exists
|
|
tags: coolify, configuration
|
|
|
|
- name: Configure .env file
|
|
ansible.builtin.template:
|
|
src: .env.j2
|
|
dest: "{{ coolify_base_dir }}/source/.env"
|
|
owner: "{{ coolify_owner }}"
|
|
group: "{{ coolify_group }}"
|
|
mode: "0640"
|
|
force: false
|
|
when: not coolify_env_file.stat.exists
|
|
tags: coolify, configuration
|