23 lines
532 B
Ruby
23 lines
532 B
Ruby
# frozen_string_literal: true
|
|
|
|
module Facts
|
|
module Openbsd
|
|
class Ec2Userdata
|
|
FACT_NAME = 'ec2_userdata'
|
|
|
|
def call_the_resolver
|
|
return Facter::ResolvedFact.new(FACT_NAME, nil) unless aws_hypervisors?
|
|
|
|
fact_value = Facter::Resolvers::Ec2.resolve(:userdata)
|
|
|
|
Facter::ResolvedFact.new(FACT_NAME, fact_value&.empty? ? nil : fact_value)
|
|
end
|
|
|
|
private
|
|
|
|
def aws_hypervisors?
|
|
Facter::Util::Facts::Posix::VirtualDetector.platform =~ /kvm|xen|aws/
|
|
end
|
|
end
|
|
end
|
|
end
|