Module: PeInfo::Tarball
- Defined in:
- lib/pe_info/tarball.rb
Class Method Summary collapse
- .agent_version(tarball) ⇒ Object
- .inspect(tarball) ⇒ Object
- .is_pe_tarball(tarball) ⇒ Object
- .pe_version(tarball) ⇒ Object
Class Method Details
.agent_version(tarball) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/pe_info/tarball.rb', line 15 def self.agent_version(tarball) agent_package = %x(tar ztf #{tarball} '**/puppet-agent*') agent_version = agent_package.match(/puppet-agent-(\d+\.\d+\.\d+)/).captures.first agent_version end |
.inspect(tarball) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/pe_info/tarball.rb', line 22 def self.inspect(tarball) if is_pe_tarball(tarball) if File.exists?(tarball) # capture the main version pe_version = pe_version(tarball) # look for the agent version agent_version = agent_version(tarball) else raise "File not found: #{tarball}" end else raise "Not a puppet install tarball: #{tarball}" end return pe_version, agent_version end |
.is_pe_tarball(tarball) ⇒ Object
5 6 7 |
# File 'lib/pe_info/tarball.rb', line 5 def self.is_pe_tarball(tarball) tarball =~ /puppet-enterprise-\d{4}\.\d+\.\d+.*\.tar\.gz/ end |
.pe_version(tarball) ⇒ Object
9 10 11 12 13 |
# File 'lib/pe_info/tarball.rb', line 9 def self.pe_version(tarball) pe_version = tarball.match(/puppet-enterprise-(\d{4}\.\d+\.\d+)/).captures.first pe_version end |