76 lines
2.1 KiB
YAML
76 lines
2.1 KiB
YAML
---
|
|
- name: Install and Setup unpoller
|
|
tags: [ unpoller, alloy, podman, container ]
|
|
block:
|
|
- name: Install Podman
|
|
become: true
|
|
ansible.builtin.package:
|
|
name:
|
|
- podman
|
|
- fuse-overlayfs
|
|
|
|
- name: Create unpoller group
|
|
become: true
|
|
register: alloy_unpoller_group
|
|
ansible.builtin.group:
|
|
name: unpoller
|
|
|
|
- name: Create unpoller user
|
|
become: true
|
|
register: alloy_unpoller_user
|
|
ansible.builtin.user:
|
|
name: unpoller
|
|
group: unpoller
|
|
system: true
|
|
|
|
- name: Create unpoller configuration directory
|
|
become: true
|
|
ansible.builtin.file:
|
|
path: /etc/unpoller
|
|
state: directory
|
|
owner: "{{ alloy_unpoller_user.name }}"
|
|
mode: "0755"
|
|
|
|
- name: Render unpoller configuration
|
|
become: true
|
|
notify: Unpoller.restarted
|
|
ansible.builtin.template:
|
|
src: unpoller.conf.j2
|
|
dest: /etc/unpoller/up.conf
|
|
owner: "{{ alloy_unpoller_user.name }}"
|
|
mode: "0644"
|
|
|
|
- name: Create /etc/containers/systemd directory
|
|
become: true
|
|
ansible.builtin.file:
|
|
path: /etc/containers/systemd
|
|
state: directory
|
|
owner: root
|
|
mode: "0755"
|
|
|
|
- name: Configure unpoller quadlet
|
|
become: true
|
|
notify: Unpoller.restarted
|
|
register: alloy_unpoller_quadlet
|
|
vars:
|
|
container_image_with_tag: ghcr.io/unpoller/unpoller:v2
|
|
container_unit_args:
|
|
container_exec:
|
|
container_envs: [ ]
|
|
container_volumes:
|
|
- { host: "/etc/unpoller", inside: "/etc/unpoller:ro" }
|
|
user_id: "{{ alloy_unpoller_user.uid }}"
|
|
group_id: "{{ alloy_unpoller_group.gid }}"
|
|
ansible.builtin.template:
|
|
src: podman.container.jinja
|
|
dest: /etc/containers/systemd/unpoller.container
|
|
owner: root
|
|
mode: "0644"
|
|
|
|
- name: Ensure unpoller is running and enabled
|
|
become: true
|
|
ansible.builtin.systemd:
|
|
name: unpoller.service
|
|
state: started
|
|
enabled: true
|
|
daemon_reload: "{{ alloy_unpoller_quadlet.changed }}"
|