module Porkadot::Configs::Kubernetes::Component

def args bootstrap: false

def args bootstrap: false
  extra = {}
  if self.extra_args
    extra = self.extra_args.map{|i| i.split('=', 2)}.to_h
  end
  if bootstrap
    extra = self.bootstrap_args.merge(extra)
  end
  return self.default_args.merge(extra)
end

def instance_labels

def instance_labels
  {
    "#{RECOMMENDED_LABEL_PREFIX}/component": self.component_name,
    "#{RECOMMENDED_LABEL_PREFIX}/instance": "#{self.component_name}-porkadot",
    "#{RECOMMENDED_LABEL_PREFIX}/managed-by": 'porkadot',
  }
end

def labels

def labels
  self.instance_labels.merge({
    "#{RECOMMENDED_LABEL_PREFIX}/name": self.component_name,
    "#{RECOMMENDED_LABEL_PREFIX}/component": self.component_name,
    "#{RECOMMENDED_LABEL_PREFIX}/instance": "#{self.component_name}-porkadot",
    "#{RECOMMENDED_LABEL_PREFIX}/version": self.config.k8s.kubernetes_version,
    "#{RECOMMENDED_LABEL_PREFIX}/part-of": 'kubernetes',
    "#{RECOMMENDED_LABEL_PREFIX}/managed-by": 'porkadot',
    "k8s-app": self.component_name,
  })
end

def log_level

def log_level
  config.kubernetes.log_level || raw.log_level || 2
end