github.com/rancher/types@v0.0.0-20220328215343-4370ff10ecd5/apis/management.cattle.io/v3/k3s_types.go (about)

     1  package v3
     2  
     3  //K3sConfig provides desired configuration for k3s clusters
     4  type K3sConfig struct {
     5  	// k3s Kubernetes version, unset the value indicates an unmanaged cluster
     6  	Version            string `yaml:"kubernetes_version" json:"kubernetesVersion,omitempty"`
     7  	K3sUpgradeStrategy `yaml:"k3s_upgrade_strategy,omitempty" json:"k3supgradeStrategy,omitempty"`
     8  }
     9  
    10  //K3sUpgradeStrategy provides configuration to the downstream system-upgrade-controller
    11  type K3sUpgradeStrategy struct {
    12  	// How many controlplane nodes should be upgrade at time, defaults to 1
    13  	ServerConcurrency int `yaml:"server_concurrency" json:"serverConcurrency,omitempty" norman:"min=1"`
    14  	// How many workers should be upgraded at a time
    15  	WorkerConcurrency int `yaml:"worker_concurrency" json:"workerConcurrency,omitempty" norman:"min=1"`
    16  	// Whether controlplane nodes should be drained
    17  	DrainServerNodes bool `yaml:"drain_server_nodes" json:"drainServerNodes,omitempty"`
    18  	// Whether worker nodes should be drained
    19  	DrainWorkerNodes bool `yaml:"drain_worker_nodes" json:"drainWorkerNodes,omitempty"`
    20  }