diff options
author | varac <varacanero@zeromail.org> | 2017-01-16 13:34:48 +0100 |
---|---|---|
committer | varac <varacanero@zeromail.org> | 2017-01-16 13:34:48 +0100 |
commit | f3c4059603a6ac19f132b0dc47b95e49d9ddc4ba (patch) | |
tree | d538ad5f49dc31a3bf10029a2c875b729048cdc0 /lib/facter | |
parent | dc76f6f69e306f865a4a7c3b78b6d5ba694719c5 (diff) | |
parent | a0321364514f52a4c110a15afbdad5109d768fe6 (diff) |
Diffstat (limited to 'lib/facter')
-rw-r--r-- | lib/facter/systemd.rb | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/lib/facter/systemd.rb b/lib/facter/systemd.rb new file mode 100644 index 0000000..4361f77 --- /dev/null +++ b/lib/facter/systemd.rb @@ -0,0 +1,35 @@ +# Fact: systemd +# +# Purpose: +# Determine whether SystemD is the init system on the node +# +# Resolution: +# Check the name of the process 1 (ps -p 1) +# +# Caveats: +# + +# Fact: systemd-version +# +# Purpose: +# Determine the version of systemd installed +# +# Resolution: +# Check the output of systemctl --version +# +# Caveats: +# + +Facter.add(:systemd) do + confine :kernel => :linux + setcode do + Facter::Util::Resolution.exec('ps -p 1 -o comm=') == 'systemd' + end +end + +Facter.add(:systemd_version) do + confine :systemd => true + setcode do + Facter::Util::Resolution.exec("systemctl --version | awk '/systemd/{ print $2 }'") + end +end |