Skip to content
This repository was archived by the owner on Mar 6, 2023. It is now read-only.

Commit c6ffcfd

Browse files
authored
remove system user management and convert variables to internal ones (#142)
* remove system user management and convert variables to internal ones * molecule: remove testing for user creation as it is not easily possible due to ansible variable precedence [minor] release
1 parent 5344748 commit c6ffcfd

File tree

8 files changed

+11
-21
lines changed

8 files changed

+11
-21
lines changed

README.md

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@ All variables which can be overridden are stored in [defaults/main.yml](defaults
2525
| `node_exporter_version` | 0.18.1 | Node exporter package version. Also accepts latest as parameter. |
2626
| `node_exporter_binary_local_dir` | "" | Allows to use local packages instead of ones distributed on github. As parameter it takes a directory where `node_exporter` binary is stored on host on which ansible is ran. This overrides `node_exporter_version` parameter |
2727
| `node_exporter_web_listen_address` | "0.0.0.0:9100" | Address on which node exporter will listen |
28-
| `node_exporter_system_group` | "node-exp" | System group used to run node_exporter |
29-
| `node_exporter_system_user` | "node-exp" | System user used to run node_exporter |
3028
| `node_exporter_enabled_collectors` | [ systemd, textfile ] | List of additionally enabled collectors. It adds collectors to [those enabled by default](https://github.com/prometheus/node_exporter#enabled-by-default) |
3129
| `node_exporter_disabled_collectors` | [] | List of disabled collectors. By default node_exporter disables collectors listed [here](https://github.com/prometheus/node_exporter#disabled-by-default). |
3230
| `node_exporter_textfile_dir` | "/var/lib/node_exporter" | Directory used by the [Textfile Collector](https://github.com/prometheus/node_exporter#textfile-collector). To get permissions to write metrics in this directory, users must be in `node-exp` system group.

defaults/main.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,6 @@ node_exporter_version: 0.18.1
33
node_exporter_binary_local_dir: ""
44
node_exporter_web_listen_address: "0.0.0.0:9100"
55

6-
node_exporter_system_group: "node-exp"
7-
node_exporter_system_user: "{{ node_exporter_system_group }}"
8-
96
node_exporter_textfile_dir: "/var/lib/node_exporter"
107

118
node_exporter_enabled_collectors:

molecule/alternative/playbook.yml

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@
66
- ansible-node-exporter
77
vars:
88
node_exporter_binary_local_dir: "/tmp/node_exporter-linux-amd64"
9-
node_exporter_system_group: "root"
10-
node_exporter_system_user: "root"
119
node_exporter_textfile_dir: ""
1210
node_exporter_enabled_collectors:
1311
- entropy

molecule/alternative/tests/test_alternative.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,11 +14,6 @@ def test_directories(host):
1414
assert not d.exists
1515

1616

17-
def test_user(host):
18-
assert not host.group("node-exp").exists
19-
assert not host.user("node-exp").exists
20-
21-
2217
def test_service(host):
2318
s = host.service("node_exporter")
2419
# assert s.is_enabled

tasks/configure.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@
1212
file:
1313
path: "{{ node_exporter_textfile_dir }}"
1414
state: directory
15-
owner: "{{ node_exporter_system_user }}"
16-
group: "{{ node_exporter_system_group }}"
15+
owner: "{{ _node_exporter_system_user }}"
16+
group: "{{ _node_exporter_system_group }}"
1717
recurse: true
1818
mode: 0775
1919
when: node_exporter_textfile_dir | length > 0

tasks/install.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
---
22
- name: Create the node_exporter group
33
group:
4-
name: "{{ node_exporter_system_group }}"
4+
name: "{{ _node_exporter_system_group }}"
55
state: present
66
system: true
7-
when: node_exporter_system_group != "root"
7+
when: _node_exporter_system_group != "root"
88

99
- name: Create the node_exporter user
1010
user:
11-
name: "{{ node_exporter_system_user }}"
12-
groups: "{{ node_exporter_system_group }}"
11+
name: "{{ _node_exporter_system_user }}"
12+
groups: "{{ _node_exporter_system_group }}"
1313
append: true
1414
shell: /usr/sbin/nologin
1515
system: true
1616
create_home: false
1717
home: /
18-
when: node_exporter_system_user != "root"
18+
when: _node_exporter_system_user != "root"
1919

2020
- block:
2121
- name: Download node_exporter binary to local folder

templates/node_exporter.service.j2

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ StartLimitInterval=0
77

88
[Service]
99
Type=simple
10-
User={{ node_exporter_system_user }}
11-
Group={{ node_exporter_system_group }}
10+
User={{ _node_exporter_system_user }}
11+
Group={{ _node_exporter_system_group }}
1212
ExecStart={{ _node_exporter_binary_install_dir }}/node_exporter \
1313
{% for collector in node_exporter_enabled_collectors -%}
1414
{% if not collector is mapping %}

vars/main.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,3 +9,5 @@ go_arch_map:
99
go_arch: "{{ go_arch_map[ansible_architecture] | default(ansible_architecture) }}"
1010

1111
_node_exporter_binary_install_dir: "/usr/local/bin"
12+
_node_exporter_system_group: "node-exp"
13+
_node_exporter_system_user: "{{ _node_exporter_system_group }}"

0 commit comments

Comments
 (0)