Files
public/Infrastrucutre as Code/Ansible/roles/bootstrap_roles/endlessh/tasks/main.yml
T
2026-06-09 10:20:07 +03:00

68 lines
1.6 KiB
YAML

---
- name: Ensure endlessh group exists
ansible.builtin.group:
name: endlessh
system: true
- name: Ensure endlessh user exists
ansible.builtin.user:
name: endlessh
group: endlessh
system: true
shell: /usr/sbin/nologin
create_home: false
- name: Ensure Endlessh repo is cloned and updated
ansible.builtin.git:
repo: "{{ endlessh_repo }}"
dest: "{{ endlessh_clone_path }}"
version: master
update: yes
register: git_result
- name: Build Endlessh if repo was updated
ansible.builtin.command: make
args:
chdir: "{{ endlessh_clone_path }}"
when: git_result.after != git_result.before
register: make_result
# no changed_when needed; we'll rely on the copy step to track changes
- name: Copy Endlessh binary to /usr/local/bin if updated
ansible.builtin.copy:
src: "{{ endlessh_clone_path }}/endlessh"
dest: /usr/local/bin/endlessh
mode: "0755"
remote_src: true
when: git_result.after != git_result.before
register: copy_result
- name: Create Endlessh config directory
ansible.builtin.file:
path: /etc/endlessh
state: directory
mode: "0755"
- name: Deploy Endlessh config
ansible.builtin.template:
src: endlessh_config.j2
dest: /etc/endlessh/config
mode: "0644"
- name: Deploy Endlessh systemd service
ansible.builtin.template:
src: endlessh.service.j2
dest: /etc/systemd/system/endlessh.service
mode: "0644"
- name: Reload systemd daemon
ansible.builtin.systemd:
daemon_reload: true
- name: Restart Endlessh if binary updated
ansible.builtin.systemd:
name: endlessh
enabled: true
state: restarted
when: copy_result is changed