class MetadataJob
Attributes
job[R]
Public Class Methods
new(job)
click to toggle source
# File lib/prof/matchers/metadata.rb, line 105 def initialize(job) @job = job end
Public Instance Methods
has_template?(template_name:)
click to toggle source
# File lib/prof/matchers/metadata.rb, line 109 def has_template?(template_name:) job['job_templates'].include?(template_name).tap do |result| raise MetadataError.new("Could not find template '#{template_name}' for job #{job_name} in metadata") unless result end end
instance_definition(definition_name:)
click to toggle source
# File lib/prof/matchers/metadata.rb, line 115 def instance_definition(definition_name:) instance_definition = instance_definitions.find { |definition| definition['name'] == definition_name }.tap do |instance| raise MetadataError.new("Could not find instance type: #{definition_name} for job type: #{job_name}") unless instance end MetadataDefinition.new(instance_definition, job_name) end
resource_definition(definition_name:)
click to toggle source
# File lib/prof/matchers/metadata.rb, line 122 def resource_definition(definition_name:) resource_definition = resource_definitions.find { |definition| definition['name'] == definition_name }.tap do |resource| raise MetadataError.new("Could not find resource type: #{definition_name} for job type: #{job_name}") unless resource end MetadataDefinition.new(resource_definition, job_name) end
Private Instance Methods
instance_definitions()
click to toggle source
# File lib/prof/matchers/metadata.rb, line 137 def instance_definitions job['instance_definitions'] end
job_name()
click to toggle source
# File lib/prof/matchers/metadata.rb, line 133 def job_name job['name'] end
resource_definitions()
click to toggle source
# File lib/prof/matchers/metadata.rb, line 141 def resource_definitions job['resource_definitions'] end