sepiatones_xyz/ansible/deploy.yml

102 lines
2.3 KiB
YAML

---
- name: Deploy sepiatones_xyz project
hosts: all
become: yes
vars:
app_user: "sepiatones_xyz"
app_home: "/home/{{ app_user }}"
tasks:
- name: Ensure user exists
user:
name: "{{ app_user }}"
shell: /bin/bash
create_home: yes
home: "{{ app_home }}"
- name: Create data directory
file:
path: "{{ app_home }}/data"
state: directory
owner: "{{ app_user }}"
group: "{{ app_user }}"
- name: Create templates directory
file:
path: "{{ app_home }}/templates"
state: directory
owner: "{{ app_user }}"
group: "{{ app_user }}"
- name: Copy binary to target location
copy:
src: ../target/sepiatones_xyz
dest: "{{ app_home }}/sepiatones_xyz"
owner: "{{ app_user }}"
group: "{{ app_user }}"
mode: "0755"
- name: Copy data directory
synchronize:
src: ../data/
dest: "{{ app_home }}/data/"
recursive: yes
owner: no
group: no
archive: yes
delete: yes
- name: Copy templates directory
synchronize:
src: ../templates/
dest: "{{ app_home }}/templates/"
recursive: yes
owner: no
group: no
archive: yes
delete: yes
- name: Ensure Caddy directory exists
file:
path: /etc/caddy/sites
state: directory
- name: Copy Caddy configuration
copy:
src: sepiatones_xyz.caddy
dest: /etc/caddy/sites/sepiatones_xyz.caddy
owner: root
group: root
mode: "0644"
register: caddy_config_copy
- name: Restart Caddy service if config changed
systemd:
name: caddy
state: restarted
daemon_reload: yes
when: caddy_config_copy.changed
- name: Ensure Supervisor directory exists
file:
path: /etc/supervisor/conf.d
state: directory
- name: Copy Supervisor configuration
copy:
src: sepiatones_xyz.supervisor
dest: /etc/supervisor/conf.d/sepiatones_xyz.conf
owner: root
group: root
mode: "0644"
- name: Reload Supervisor
supervisorctl:
name: sepiatones_xyz
state: present
- name: Restart the service
supervisorctl:
name: sepiatones_xyz
state: restarted