61 lines
1.7 KiB
YAML
61 lines
1.7 KiB
YAML
---
|
|
- name: Install Tianji Reporter
|
|
hosts: vms:!apps # Tianji is already installed on apps node
|
|
become: true
|
|
vars:
|
|
server_url: "https://tianji.thegrind.dev"
|
|
workspace_id: "clnzoxcy10001vy2ohi4obbi0"
|
|
tasks:
|
|
- name: Ensure curl and wget are installed (Debian)
|
|
ansible.builtin.apt:
|
|
name:
|
|
- curl
|
|
- wget
|
|
update_cache: true
|
|
|
|
- name: Create install directory
|
|
ansible.builtin.file:
|
|
path: /usr/local/tianji/reporter
|
|
state: directory
|
|
mode: '0755'
|
|
|
|
- name: Check if Tianji reporter binary already exists
|
|
stat:
|
|
path: /usr/local/tianji/reporter/tianji-reporter
|
|
register: tianji_binary
|
|
|
|
- name: Download Tianji reporter binary
|
|
ansible.builtin.get_url:
|
|
url: "https://github.com/msgbyte/tianji/releases/latest/download/tianji-reporter-linux-amd64"
|
|
dest: /usr/local/tianji/reporter/tianji-reporter
|
|
mode: '0755'
|
|
when: not tianji_binary.stat.exists
|
|
|
|
- name: Create systemd service
|
|
ansible.builtin.copy:
|
|
dest: /usr/lib/systemd/system/tianji-reporter.service
|
|
content: |
|
|
[Unit]
|
|
Description=Tianji-Reporter
|
|
Documentation=https://github.com/msgbyte/tianji
|
|
After=network.target
|
|
|
|
[Service]
|
|
ExecStart=/usr/local/tianji/reporter/tianji-reporter --url "{{ server_url }}" --workspace "{{ workspace_id }}"
|
|
ExecReload=/bin/kill -HUP $MAINPID
|
|
Restart=on-failure
|
|
|
|
[Install]
|
|
WantedBy=multi-user.target
|
|
mode: '0644'
|
|
|
|
- name: Reload systemd
|
|
ansible.builtin.systemd:
|
|
daemon_reload: true
|
|
|
|
- name: Enable and start Tianji reporter
|
|
ansible.builtin.systemd:
|
|
name: tianji-reporter
|
|
enabled: true
|
|
state: started
|