class PuppetMetadata::GithubActions
Attributes
metadata[R]
Public Class Methods
new(metadata)
click to toggle source
@param [PuppetMetadata::Metadata] metadata
# File lib/puppet_metadata/github_actions.rb, line 6 def initialize(metadata) @metadata = metadata end
Public Instance Methods
outputs(beaker_use_fqdn: false, beaker_pidfile_workaround: false)
click to toggle source
@return [Hash[Symbol, Any]] The outputs for Github Actions
# File lib/puppet_metadata/github_actions.rb, line 11 def outputs(beaker_use_fqdn: false, beaker_pidfile_workaround: false) { beaker_setfiles: beaker_setfiles(beaker_use_fqdn, beaker_pidfile_workaround), puppet_major_versions: puppet_major_versions, puppet_unit_test_matrix: puppet_unit_test_matrix, github_action_test_matrix: github_action_test_matrix(use_fqdn: beaker_use_fqdn, pidfile_workaround: beaker_pidfile_workaround), } end
Private Instance Methods
beaker_setfiles(use_fqdn, pidfile_workaround)
click to toggle source
# File lib/puppet_metadata/github_actions.rb, line 22 def beaker_setfiles(use_fqdn, pidfile_workaround) setfiles = [] metadata.beaker_setfiles(use_fqdn: use_fqdn, pidfile_workaround: pidfile_workaround) do |setfile, name| setfiles << { name: name, value: setfile, } end setfiles end
github_action_test_matrix(use_fqdn: false, pidfile_workaround: false)
click to toggle source
# File lib/puppet_metadata/github_actions.rb, line 69 def github_action_test_matrix(use_fqdn: false, pidfile_workaround: false) matrix_include = [] metadata.operatingsystems.each do |os, releases| releases&.each do |release| puppet_major_versions.each do |puppet_version| next unless AIO.has_aio_build?(os, release, puppet_version[:value]) setfile = PuppetMetadata::Beaker.os_release_to_setfile(os, release, use_fqdn: use_fqdn, pidfile_workaround: pidfile_workaround) next unless setfile matrix_include << { setfile: { name: setfile[1], value: setfile[0], }, puppet: puppet_version } end end end matrix_include end
puppet_major_versions()
click to toggle source
# File lib/puppet_metadata/github_actions.rb, line 33 def puppet_major_versions metadata.puppet_major_versions.sort.reverse.map do |version| { name: "Puppet #{version}", value: version, collection: "puppet#{version}", } end end
puppet_ruby_version(puppet_version)
click to toggle source
# File lib/puppet_metadata/github_actions.rb, line 55 def puppet_ruby_version(puppet_version) case puppet_version when 4 '2.1' when 5 '2.4' when 6 '2.5' when 7 '2.7' end end
puppet_unit_test_matrix()
click to toggle source
# File lib/puppet_metadata/github_actions.rb, line 43 def puppet_unit_test_matrix metadata.puppet_major_versions.sort.reverse.map do |puppet| ruby = puppet_ruby_version(puppet) next unless ruby { puppet: puppet, ruby: ruby, } end.compact end