ansible : add alloy role

This commit is contained in:
2026-02-24 10:35:08 +00:00
parent fc45817240
commit 9bfc5a596b
6 changed files with 170 additions and 0 deletions

View File

@@ -0,0 +1,85 @@
---
- name: Download and install Alloy binary
ansible.builtin.unarchive:
src: "https://github.com/grafana/alloy/releases/download/v{{ alloy_version }}/alloy-linux-amd64.zip"
dest: "{{ alloy_binary_dir }}"
remote_src: true
tags: install
- name: Rename binary
ansible.builtin.copy:
src: "{{ alloy_binary_dir }}/alloy-linux-amd64"
dest: "{{ alloy_binary_dir }}/alloy"
remote_src: true
mode: 0755
tags: install
- name: Create Alloy group
ansible.builtin.group:
name: "{{ alloy_groupname }}"
gid: "{{ alloy_gid }}"
tags: install
- name: Create Alloy user
ansible.builtin.user:
name: "{{ alloy_username }}"
uid: "{{ alloy_uid }}"
group: "{{ alloy_groupname }}"
shell: "/bin/false"
tags: install
- name: Ensure config directory exists
ansible.builtin.file:
path: "{{ alloy_config_directory }}"
owner: "{{ alloy_username }}"
group: "{{ alloy_groupname }}"
state: directory
mode: "0755"
tags: install,config
- name: Ensure working directory exists
ansible.builtin.file:
path: "{{ alloy_working_directory }}"
state: directory
owner: "{{ alloy_username }}"
group: "{{ alloy_groupname }}"
mode: "0755"
tags: install
- name: Deploy Alloy config
ansible.builtin.template:
src: "config.j2"
dest: "{{ alloy_config_directory }}/config.alloy"
owner: "{{ alloy_username }}"
group: "{{ alloy_groupname }}"
mode: "0644"
notify: Restart alloy
tags: install,config
- name: Deploy Alloy default file
ansible.builtin.template:
src: "default.j2"
dest: "/etc/default/alloy"
owner: "root"
group: "root"
mode: 0644
notify: Restart alloy
tags: install,config
- name: Deploy Alloy systemd config
ansible.builtin.template:
src: "systemd_service.j2"
dest: "/etc/systemd/system/alloy.service"
owner: "root"
group: "root"
mode: 0644
tags: install
- name: Start and enable Alloy service
ansible.builtin.systemd_service:
name: "alloy.service"
state: started
enabled: true
daemon_reload: true
tags: install