Class: Pangea::Kubernetes::Types::K3sConfig

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

Overview

K3s distribution configuration for blackmatter-kubernetes NixOS modules. Maps to ‘services.blackmatter.k3s.*` options. Covers all k3s-specific settings that NixOS modules expose.

Instance Method Summary collapse

Instance Method Details

#to_hObject



83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
# File 'lib/pangea/kubernetes/types/k3s_config.rb', line 83

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[:disable_agent] = disable_agent if disable_agent
  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
end