init syncthing host and docker role

This commit is contained in:
2026-01-26 23:01:02 -07:00
parent 0397917b55
commit 68428bc451
6 changed files with 130 additions and 1 deletions

View File

@@ -0,0 +1,92 @@
- name: Download and verify the blackbox archive
get_url:
url: "https://github.com/blackbox/blackbox/releases/download/v{{ blackbox_version }}/blackbox-{{ blackbox_version }}.linux-amd64.tar.gz"
dest: "/tmp/blackbox-{{ blackbox_version }}.linux-amd64.tar.gz"
checksum: "sha256:{{ blackbox_sha256 }}"
register: download_result
- name: Unarchive blackbox binary
unarchive:
src: "{{ download_result.dest }}"
dest: /tmp
remote_src: true # Indicates the source file is on the remote host
owner: root
group: root
mode: 0755
- name: Copy blackbox binary to /usr/local/bin
copy:
src: "/tmp/blackbox-{{ blackbox_version }}.linux-amd64/blackbox"
dest: "/usr/local/bin/blackbox-{{ blackbox_version }}"
owner: root
group: root
mode: '0755'
remote_src: yes
- name: Create blackbox binary symlink
file:
src: "/usr/local/bin/blackbox-{{ blackbox_version }}"
dest: "/usr/local/bin/blackbox"
state: link
owner: root
group: root
mode: '0755' # Permissions for the target file
force: yes
- name: Create a blackbox group
group:
name: blackbox
state: present
gid: 1052
- name: Create a blackbox user
user:
name: blackbox
uid: 1052
group: 1052
comment: "blackbox user"
shell: /bin/bash
state: present
create_home: no
- name: Create blackbox data and config directories
file:
path: "{{ item }}"
state: directory
mode: 0750
owner: blackbox
group: blackbox
loop:
- /var/lib/blackbox_exporter
- /etc/blackbox_exporter
- name: Install blackbox config
template:
src: templates/blackbox.yml.j2
dest: /etc/blackbox/blackbox.yml
owner: blackbox
group: blackbox
mode: '0640'
notify: Restart blackbox
- name: Install blackbox service
template:
src: templates/blackbox.service.j2
dest: /etc/systemd/system/blackbox.service
owner: root
group: root
mode: 0640
register: blackbox_service
notify: Restart blackbox
- name: systemctl daemon-reload to pickup blackbox service changes
systemd_service:
daemon_reload: true
when: blackbox_service.changed
notify: Restart blackbox
- name: Start and enable blackbox
service:
name: blackbox
state: started
enabled: true