class Krane::MutatingWebhookConfiguration::Webhook

Constants

EQUIVALENT
EXACT

Public Class Methods

new(definition) click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 42
def initialize(definition)
  @definition = definition
end

Public Instance Methods

has_side_effects?() click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 50
def has_side_effects?
  !%w(None NoneOnDryRun).include?(side_effects)
end
match_policy() click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 54
def match_policy
  @definition.dig('matchPolicy')
end
matches_resource?(resource, skip_rule_if_side_effect_none: true) click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 58
def matches_resource?(resource, skip_rule_if_side_effect_none: true)
  return false if skip_rule_if_side_effect_none && !has_side_effects?
  rules.any? do |rule|
    rule.matches_resource?(resource, accept_equivalent: match_policy == EQUIVALENT)
  end
end
rules() click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 65
def rules
  @definition.fetch('rules', []).map { |rule| Rule.new(rule) }
end
side_effects() click to toggle source
# File lib/krane/kubernetes_resource/mutating_webhook_configuration.rb, line 46
def side_effects
  @definition.dig('sideEffects')
end