Project

General

Profile

« Previous | Next » 

Revision ac99a245

Added by Dominic Cleal over 7 years ago

fixes #17335 - parse Solaris update as minor version

Also fixes idempotency of OSes with only a major version (as Solaris
was prior to this change), where `minor` was nil instead of "", causing
the OS to be recreated with a validation error.
(cherry picked from commit 13875289357605c80b8073c2befcf84303e3695d)

View differences:

app/services/puppet_fact_parser.rb
orel = majorjunos + "." + minorjunos
elsif os_name[/FreeBSD/i]
orel.gsub!(/\-RELEASE\-p[0-9]+/, '')
elsif os_name[/Solaris/i]
orel.gsub!(/_u/, '.')
end
major, minor = orel.split('.', 2)
major.to_s.gsub!(/\D/, '')
minor.to_s.gsub!(/[^\d\.]/, '')
major = major.to_s.gsub(/\D/, '')
minor = minor.to_s.gsub(/[^\d\.]/, '')
args = {:name => os_name, :major => major, :minor => minor}
os = Operatingsystem.find_or_initialize_by(args)
os.release_name = facts[:lsbdistcodename] if facts[:lsbdistcodename] && (os_name[/debian|ubuntu/i] || os.family == 'Debian')

Also available in: Unified diff