Skip to content

Commit

Permalink
Merge pull request #367 from rwaffen/add_version_fact
Browse files Browse the repository at this point in the history
Add fact to get grafana version
  • Loading branch information
rwaffen authored Jun 20, 2024
2 parents 03789fc + 3df0158 commit 9eb8e38
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 0 deletions.
10 changes: 10 additions & 0 deletions lib/facter/grafana_version.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# frozen_string_literal: true

Facter.add(:grafana_version) do
version_path = '/usr/share/grafana/VERSION'
confine { File.exist?(version_path) }

setcode do
File.read(version_path).strip
end
end
29 changes: 29 additions & 0 deletions spec/facter/grafana_version_spec.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# frozen_string_literal: true

require 'facter'

describe 'grafana_version' do
before do
Facter.clear
end

context 'when VERSION file exists' do
it 'returns the version from the VERSION file' do
version = '1.2.3'
version_path = '/usr/share/grafana/VERSION'

allow(File).to receive(:exist?).with(version_path).and_return(true)
allow(File).to receive(:read).with(version_path).and_return(version)

expect(Facter.fact(:grafana_version).value).to eq(version.strip)
end
end

context 'when VERSION file does not exist' do
it 'returns nil' do
allow(File).to receive(:exist?).with('/usr/share/grafana/VERSION').and_return(false)

expect(Facter.fact(:grafana_version).value).to be_nil
end
end
end

0 comments on commit 9eb8e38

Please sign in to comment.