Module: ForemanGitTemplates::Hostext::OperatingSystem::Overrides

Defined in:
app/models/concerns/foreman_git_templates/hostext/operating_system.rb

Instance Method Summary collapse

Instance Method Details

#available_template_kinds(provisioning = nil) ⇒ Object



16
17
18
19
20
21
22
23
24
25
26
# File 'app/models/concerns/foreman_git_templates/hostext/operating_system.rb', line 16

def available_template_kinds(provisioning = nil)
  return super unless repository_path

  @available_template_kinds ||= template_kinds(provisioning).map do |kind|
    repository_klass.new(name: kind.name).tap do |t|
      t.template = RepositoryReader.call(repository_path, t.path)
    end
  rescue RepositoryReader::FileUnreadableError # file is missing or empty
    next
  end.compact
end

#provisioning_template(opts = {}) ⇒ Object



9
10
11
12
13
14
# File 'app/models/concerns/foreman_git_templates/hostext/operating_system.rb', line 9

def provisioning_template(opts = {})
  return super unless repository_path

  kind = opts[:kind].to_s || 'provision'
  available_template_kinds.find { |template| template.name == kind }
end