Class: Pangea::Kubernetes::Types::VanillaKubernetesConfig

Inherits:
Resources::BaseAttributes
  • Object
show all
Defined in:
lib/pangea/kubernetes/types/kubernetes_config.rb

Overview

Vanilla Kubernetes distribution configuration for blackmatter-kubernetes NixOS modules. Maps to ‘services.blackmatter.kubernetes.*` options.

Extends K3sConfig fields with control plane, PKI, and etcd options that are only relevant for vanilla Kubernetes (not k3s).

Instance Method Summary collapse

Instance Method Details

#to_hObject



98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
# File 'lib/pangea/kubernetes/types/kubernetes_config.rb', line 98

def to_h
  hash = {}
  hash[:cluster_cidr] = cluster_cidr if cluster_cidr
  hash[:service_cidr] = service_cidr if service_cidr
  hash[:cluster_dns] = cluster_dns if cluster_dns
  hash[:node_name] = node_name if node_name
  hash[:node_labels] = node_labels if node_labels.any?
  hash[:node_taints] = node_taints if node_taints.any?
  hash[:node_ip] = node_ip if node_ip
  hash[:extra_flags] = extra_flags if extra_flags.any?
  hash[:data_dir] = data_dir if data_dir
  hash[:config_path] = config_path if config_path
  hash[:environment_file] = environment_file if environment_file
  hash[:containerd_config_template] = containerd_config_template if containerd_config_template
  hash[:disable] = disable if disable.any?
  hash[:extra_kubelet_config] = extra_kubelet_config if extra_kubelet_config.any?
  hash[:extra_kube_proxy_config] = extra_kube_proxy_config if extra_kube_proxy_config.any?
  hash[:manifests] = manifests if manifests.any?
  hash[:firewall] = firewall.to_h if firewall
  hash[:kernel] = kernel.to_h if kernel
  hash[:wait_for_dns] = wait_for_dns.to_h if wait_for_dns
  hash[:nvidia_enable] = nvidia_enable if nvidia_enable
  hash[:graceful_node_shutdown] = graceful_node_shutdown
  hash[:control_plane] = control_plane.to_h if control_plane
  hash[:pki] = pki.to_h if pki
  hash[:etcd] = etcd.to_h if etcd
  hash
end