Skip to content

Commit

Permalink
Merge pull request voxpupuli#373 from bastelfreak/arch4
Browse files Browse the repository at this point in the history
Archlinux: Do not manage node_exporter group/user
  • Loading branch information
bastelfreak committed Sep 23, 2019
2 parents eb846e8 + 2557816 commit 74f52b1
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 2 deletions.
4 changes: 4 additions & 0 deletions data/Archlinux.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,3 +6,7 @@ prometheus::env_file_path: '/etc/default'
prometheus::node_exporter::package_name: 'prometheus-node-exporter'
prometheus::node_exporter::install_method: 'package'
prometheus::node_exporter::bin_name: 'prometheus-node-exporter'
prometheus::node_exporter::user: 'node_exporter'
prometheus::node_exporter::group: 'node_exporter'
prometheus::node_exporter::manage_user: false
prometheus::node_exporter::manage_group: false
34 changes: 32 additions & 2 deletions spec/classes/node_exporter_spec.rb
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,32 @@
context 'without parameters' do
it { is_expected.to compile.with_all_deps }
it { is_expected.to contain_class('prometheus') }
it { is_expected.to contain_user('node-exporter') }
it { is_expected.to contain_group('node-exporter') }
it { is_expected.to contain_prometheus__daemon('node_exporter').with(options: ' ') }
it { is_expected.to contain_service('node_exporter') }

if facts[:os]['name'] == 'Archlinux'
it { is_expected.not_to contain_user('node-exporter') }
it { is_expected.not_to contain_group('node-exporter') }
it { is_expected.not_to contain_file('/opt/node_exporter-0.18.1.linux-amd64/node_exporter') }
it { is_expected.not_to contain_file('/usr/local/bin/node_exporter') }
it { is_expected.to contain_package('prometheus-node-exporter') }
it { is_expected.to contain_file('/etc/default/node_exporter') }
it { is_expected.to contain_systemd__unit_file('node_exporter.service') }
else
it { is_expected.to contain_user('node-exporter') }
it { is_expected.to contain_group('node-exporter') }
it { is_expected.to contain_file('/opt/node_exporter-0.18.1.linux-amd64/node_exporter') }
it { is_expected.to contain_file('/usr/local/bin/node_exporter') }
end

if facts[:os]['family'] == 'RedHat' && facts[:os]['release']['major'].to_i < 7
it { is_expected.to contain_file('/etc/sysconfig/node_exporter') }
it { is_expected.to contain_file('/etc/init.d/node_exporter') }
end

if facts[:os]['release']['major'].to_i == 14
it { is_expected.to contain_file('/etc/init/node_exporter.conf') }
end
end

context 'without collector parameters' do
Expand All @@ -28,6 +50,13 @@
it { is_expected.to compile.with_all_deps }
it { is_expected.to contain_archive('/tmp/node_exporter-0.18.1.tar.gz') }
it { is_expected.to contain_prometheus__daemon('node_exporter').with(options: ' --collector.foo --collector.bar --no-collector.baz --no-collector.qux') }
if facts[:os]['name'] == 'Archlinux'
it { is_expected.to contain_file('/usr/bin/node_exporter') }
it { is_expected.not_to contain_file('/usr/local/bin/node_exporter') }
else
it { is_expected.to contain_file('/usr/local/bin/node_exporter') }
it { is_expected.not_to contain_file('/usr/bin/node_exporter') }
end
end

context 'without collector parameters and extra options' do
Expand Down Expand Up @@ -56,6 +85,7 @@

it { is_expected.to compile.with_all_deps }
it { is_expected.to contain_archive('/tmp/node_exporter-0.13.0.tar.gz') }
it { is_expected.to contain_file('/opt/node_exporter-0.13.0.linux-amd64/node_exporter') }
describe 'install correct binary' do
it { is_expected.to contain_file('/usr/local/bin/node_exporter').with('target' => '/opt/node_exporter-0.13.0.linux-amd64/node_exporter') }
end
Expand Down

0 comments on commit 74f52b1

Please sign in to comment.