src.nth.io/

summaryrefslogtreecommitdiff
path: root/bitcoind-prometheus-exporter/tasks/main.yaml
blob: 5792252056f572e0a457e7f9d02774d396e703c1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
---

- name: apt-get bitcoind-prometheus-exporter install deps
  become: yes
  apt: name="python3-pip"

- name: pip bitcoind-prometheus-exporter install deps
  become: yes
  pip: name="{{item}}" break_system_packages="true"
  loop:
    - "riprova"
    - "prometheus_client"
    - "python-bitcoinlib"

# The exporter reads rpc credentials from bitcoin.conf, which the bitcoind
# role keeps at 0640 bitcoin:bitcoin.
- name: add prometheus user to the bitcoin group
  become: yes
  user:
    name: "prometheus"
    groups: "{{bitcoind_user | default('bitcoin')}}"
    append: yes
  notify: restart service

- name: unarchive bitcoind-prometheus-exporter
  become: yes
  unarchive:
    remote_src: yes
    src: "{{bitcoind_prometheus_exporter_url}}"
    dest: "/tmp"
    creates: "/tmp/{{bitcoind_prometheus_exporter_tar_name}}/"
  notify: restart service

- name: install bitcoind-prometheus-exporter
  become: yes
  copy:
    src: "/tmp/{{bitcoind_prometheus_exporter_tar_name}}/bitcoind-monitor.py"
    dest: "/usr/local/bin/bitcoind-prometheus-exporter.py"
    remote_src: yes
    owner: "root"
    group: "root"
    mode: "0755"
  changed_when: false

- name: install bitcoind-prometheus-exporter service
  become: yes
  template:
    src: "bitcoind-prometheus-exporter.service.j2"
    dest: "/lib/systemd/system/bitcoind-prometheus-exporter.service"
    mode: "0644"
  notify: restart service

- name: ensure bitcoind-prometheus-exporter service is started
  become: yes
  systemd: service="bitcoind-prometheus-exporter.service" enabled="yes" state="started" daemon_reload="yes"