legacyconfig

package
v0.20.0-beta.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 8, 2024 License: Apache-2.0 Imports: 6 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MigrateLegacyConfig

func MigrateLegacyConfig(distro, oldValues string) (string, error)

Types

type APIServerValues

type APIServerValues struct {
	SyncerExORCommonValues
	ControlPlaneCommonValues
}

type AdmissionValues

type AdmissionValues struct {
	ValidatingWebhooks []config.ValidatingWebhookConfiguration `json:"validatingWebhooks,omitempty"`
	MutatingWebhooks   []config.MutatingWebhookConfiguration   `json:"mutatingWebhooks,omitempty"`
}

type BaseHelm

type BaseHelm struct {
	GlobalAnnotations    map[string]string        `json:"globalAnnotations,omitempty"`
	Pro                  bool                     `json:"pro,omitempty"`
	ProLicenseSecret     string                   `json:"proLicenseSecret,omitempty"`
	Headless             bool                     `json:"headless,omitempty"`
	DefaultImageRegistry string                   `json:"defaultImageRegistry,omitempty"`
	Plugin               map[string]interface{}   `json:"plugin,omitempty"`
	Sync                 SyncValues               `json:"sync,omitempty"`
	FallbackHostDNS      bool                     `json:"fallbackHostDns,omitempty"`
	MapServices          MapServices              `json:"mapServices,omitempty"`
	Proxy                ProxyValues              `json:"proxy,omitempty"`
	Volumes              []map[string]interface{} `json:"volumes,omitempty"`
	ServiceAccount       struct {
		Create           *bool                        `json:"create,omitempty"`
		Name             string                       `json:"name,omitempty"`
		ImagePullSecrets []config.ImagePullSecretName `json:"imagePullSecrets"`
	} `json:"serviceAccount,omitempty"`
	WorkloadServiceAccount struct {
		Annotations map[string]string `json:"annotations,omitempty"`
	} `json:"workloadServiceAccount,omitempty"`
	Rbac                RBACValues               `json:"rbac,omitempty"`
	NodeSelector        map[string]interface{}   `json:"nodeSelector,omitempty"`
	Affinity            map[string]interface{}   `json:"affinity,omitempty"`
	PriorityClassName   string                   `json:"priorityClassName,omitempty"`
	Tolerations         []map[string]interface{} `json:"tolerations,omitempty"`
	Labels              map[string]string        `json:"labels,omitempty"`
	PodLabels           map[string]string        `json:"podLabels,omitempty"`
	Annotations         map[string]string        `json:"annotations,omitempty"`
	PodAnnotations      map[string]string        `json:"podAnnotations,omitempty"`
	PodDisruptionBudget PDBValues                `json:"podDisruptionBudget,omitempty"`
	Service             ServiceValues            `json:"service,omitempty"`
	Ingress             IngressValues            `json:"ingress,omitempty"`

	SecurityContext    map[string]interface{} `json:"securityContext,omitempty"`
	PodSecurityContext map[string]interface{} `json:"podSecurityContext,omitempty"`
	Openshift          struct {
		Enable bool `json:"enable,omitempty"`
	} `json:"openshift,omitempty"`
	Coredns            CoreDNSValues    `json:"coredns,omitempty"`
	Isolation          IsolationValues  `json:"isolation,omitempty"`
	Init               InitValues       `json:"init,omitempty"`
	MultiNamespaceMode EnabledSwitch    `json:"multiNamespaceMode,omitempty"`
	Telemetry          TelemetryValues  `json:"telemetry,omitempty"`
	ServiceCIDR        string           `json:"serviceCIDR,omitempty"`
	NoopSyncer         NoopSyncerValues `json:"noopSyncer,omitempty"`
	Monitoring         MonitoringValues `json:"monitoring,omitempty"`
	CentralAdmission   AdmissionValues  `json:"centralAdmission,omitempty"`
}

type CommonValues

type CommonValues struct {
	Volumes           []map[string]interface{} `json:"volumes,omitempty"`
	PriorityClassName string                   `json:"priorityClassName,omitempty"`
	NodeSelector      map[string]interface{}   `json:"nodeSelector,omitempty"`
	Affinity          map[string]interface{}   `json:"affinity,omitempty"`
	Tolerations       []map[string]interface{} `json:"tolerations,omitempty"`
	PodAnnotations    map[string]string        `json:"podAnnotations,omitempty"`
	PodLabels         map[string]string        `json:"podLabels,omitempty"`
}

type ControlPlaneCommonValues

type ControlPlaneCommonValues struct {
	Image           string `json:"image,omitempty"`
	ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
}

type ControllerValues

type ControllerValues struct {
	SyncerExORCommonValues
	ControlPlaneCommonValues
}

type CoreDNSPluginValues

type CoreDNSPluginValues struct {
	Enabled bool          `json:"enabled,omitempty"`
	Config  []DNSMappings `json:"config,omitempty"`
}

type CoreDNSServiceValues

type CoreDNSServiceValues struct {
	Type                  string            `json:"type,omitempty"`
	ExternalIPs           []string          `json:"externalIPs,omitempty"`
	ExternalTrafficPolicy string            `json:"externalTrafficPolicy,omitempty"`
	Annotations           map[string]string `json:"annotations,omitempty"`
}

type CoreDNSValues

type CoreDNSValues struct {
	Enabled        *bool                `json:"enabled,omitempty"`
	Integrated     bool                 `json:"integrated,omitempty"`
	Fallback       string               `json:"fallback,omitempty"`
	Plugin         CoreDNSPluginValues  `json:"plugin,omitempty"`
	Replicas       int                  `json:"replicas,omitempty"`
	NodeSelector   map[string]string    `json:"nodeSelector,omitempty"`
	Image          string               `json:"image,omitempty"`
	Config         string               `json:"config,omitempty"`
	Service        CoreDNSServiceValues `json:"service,omitempty"`
	Resources      *config.Resources    `json:"resources,omitempty"`
	Manifests      string               `json:"manifests,omitempty"`
	PodAnnotations map[string]string    `json:"podAnnotations,omitempty"`
	PodLabels      map[string]string    `json:"podLabels,omitempty"`
}

type DNSMappings

type DNSMappings struct {
	Record    Record       `json:"record,omitempty"`
	Target    Target       `json:"target,omitempty"`
	AllowedOn []FilterSpec `json:"allowedOn,omitempty"`
	ExceptOn  []FilterSpec `json:"exceptOn,omitempty"`
}

type EmbeddedEtcdValues

type EmbeddedEtcdValues struct {
	Enabled         bool `json:"enabled,omitempty"`
	MigrateFromEtcd bool `json:"migrateFromEtcd,omitempty"`
}

type EnabledSwitch

type EnabledSwitch struct {
	Enabled *bool `json:"enabled,omitempty"`
}

type EtcdValues

type EtcdValues struct {
	// Disabled is allowed for k8s & eks
	Disabled bool `json:"disabled,omitempty"`
	CommonValues
	SyncerExORCommonValues
	ControlPlaneCommonValues
	SecurityContext                  map[string]interface{} `json:"securityContext,omitempty"`
	ServiceAnnotations               map[string]string      `json:"serviceAnnotations,omitempty"`
	AutoDeletePersistentVolumeClaims bool                   `json:"autoDeletePersistentVolumeClaims,omitempty"`
	Replicas                         int                    `json:"replicas,omitempty"`
	Labels                           map[string]string      `json:"labels,omitempty"`
	Annotations                      map[string]string      `json:"annotations,omitempty"`
	Storage                          Storage                `json:"storage,omitempty"`
}

type FilterSpec

type FilterSpec struct {
	Name      string   `json:"name,omitempty"`
	Namespace string   `json:"namespace,omitempty"`
	Labels    []string `json:"labels,omitempty"`
}

type IngressValues

type IngressValues struct {
	Enabled          bool              `json:"enabled,omitempty"`
	PathType         string            `json:"pathType,omitempty"`
	IngressClassName string            `json:"ingressClassName,omitempty"`
	Host             string            `json:"host,omitempty"`
	Annotations      map[string]string `json:"annotations,omitempty"`
	TLS              []interface{}     `json:"tls,omitempty"`
}

type InitValues

type InitValues struct {
	Manifests         string                          `json:"manifests,omitempty"`
	ManifestsTemplate string                          `json:"manifestsTemplate,omitempty"`
	Helm              []config.ExperimentalDeployHelm `json:"helm,omitempty"`
}

type IsolationLimitRangeValues

type IsolationLimitRangeValues struct {
	Enabled        *bool                  `json:"enabled,omitempty"`
	Default        map[string]interface{} `json:"default,omitempty"`
	DefaultRequest map[string]interface{} `json:"defaultRequest,omitempty"`
}

type IsolationValues

type IsolationValues struct {
	Enabled             bool          `json:"enabled,omitempty"`
	Namespace           *string       `json:"namespace,omitempty"`
	PodSecurityStandard string        `json:"podSecurityStandard,omitempty"`
	NodeProxyPermission EnabledSwitch `json:"nodeProxyPermission,omitempty"`

	ResourceQuota struct {
		Enabled       *bool                  `json:"enabled,omitempty"`
		Quota         map[string]interface{} `json:"quota,omitempty"`
		ScopeSelector map[string]interface{} `json:"scopeSelector,omitempty"`
		Scopes        []string               `json:"scopes,omitempty"`
	} `json:"resourceQuota,omitempty"`

	LimitRange    IsolationLimitRangeValues `json:"limitRange,omitempty"`
	NetworkPolicy NetworkPolicyValues       `json:"networkPolicy,omitempty"`
}

type K8sSyncerValues

type K8sSyncerValues struct {
	SyncerValues
	CommonValues
	SecurityContext    map[string]interface{} `json:"securityContext,omitempty"`
	PodSecurityContext map[string]interface{} `json:"podSecurityContext,omitempty"`
}

type LegacyK0sAndK3s

type LegacyK0sAndK3s struct {
	BaseHelm
	AutoDeletePersistentVolumeClaims bool               `json:"autoDeletePersistentVolumeClaims,omitempty"`
	K3sToken                         string             `json:"k3sToken,omitempty"`
	VCluster                         VClusterValues     `json:"vcluster,omitempty"`
	EmbeddedEtcd                     EmbeddedEtcdValues `json:"embeddedEtcd,omitempty"`
	Syncer                           SyncerValues       `json:"syncer,omitempty"`
	Storage                          Storage            `json:"storage,omitempty"`
}

func (*LegacyK0sAndK3s) UnmarshalYAMLStrict

func (c *LegacyK0sAndK3s) UnmarshalYAMLStrict(data []byte) error

type LegacyK8s

type LegacyK8s struct {
	BaseHelm
	Syncer       K8sSyncerValues    `json:"syncer,omitempty"`
	API          APIServerValues    `json:"api,omitempty"`
	Controller   ControllerValues   `json:"controller,omitempty"`
	Scheduler    SchedulerValues    `json:"scheduler,omitempty"`
	Etcd         EtcdValues         `json:"etcd,omitempty"`
	EmbeddedEtcd EmbeddedEtcdValues `json:"embeddedEtcd,omitempty"`
	Storage      Storage            `json:"storage,omitempty"`
}

func (*LegacyK8s) UnmarshalYAMLStrict

func (c *LegacyK8s) UnmarshalYAMLStrict(data []byte) error

type LegacyVirtualClusterOptions

type LegacyVirtualClusterOptions struct {
	// PRO Options
	ProOptions LegacyVirtualClusterProOptions `json:",inline"`

	ServerCaCert        string   `json:"serverCaCert,omitempty"`
	ServerCaKey         string   `json:"serverCaKey,omitempty"`
	TLSSANs             []string `json:"tlsSans,omitempty"`
	RequestHeaderCaCert string   `json:"requestHeaderCaCert,omitempty"`
	ClientCaCert        string   `json:"clientCaCert,omitempty"`
	KubeConfigPath      string   `json:"kubeConfig,omitempty"`

	KubeConfigContextName     string   `json:"kubeConfigContextName,omitempty"`
	KubeConfigSecret          string   `json:"kubeConfigSecret,omitempty"`
	KubeConfigSecretNamespace string   `json:"kubeConfigSecretNamespace,omitempty"`
	KubeConfigServer          string   `json:"kubeConfigServer,omitempty"`
	Tolerations               []string `json:"tolerations,omitempty"`

	BindAddress string `json:"bindAddress,omitempty"`
	Port        int    `json:"port,omitempty"`

	Name string `json:"name,omitempty"`

	TargetNamespace string `json:"targetNamespace,omitempty"`
	ServiceName     string `json:"serviceName,omitempty"`

	SetOwner bool `json:"setOwner,omitempty"`

	SyncAllNodes        bool `json:"syncAllNodes,omitempty"`
	EnableScheduler     bool `json:"enableScheduler,omitempty"`
	DisableFakeKubelets bool `json:"disableFakeKubelets,omitempty"`
	FakeKubeletIPs      bool `json:"fakeKubeletIPs,omitempty"`
	ClearNodeImages     bool `json:"clearNodeImages,omitempty"`

	NodeSelector        string `json:"nodeSelector,omitempty"`
	EnforceNodeSelector bool   `json:"enforceNodeSelector,omitempty"`
	ServiceAccount      string `json:"serviceAccount,omitempty"`

	OverrideHosts               bool   `json:"overrideHosts,omitempty"`
	OverrideHostsContainerImage string `json:"overrideHostsContainerImage,omitempty"`

	ClusterDomain string `json:"clusterDomain,omitempty"`

	LeaderElect   bool `json:"leaderElect,omitempty"`
	LeaseDuration int  `json:"leaseDuration,omitempty"`
	RenewDeadline int  `json:"renewDeadline,omitempty"`
	RetryPeriod   int  `json:"retryPeriod,omitempty"`

	PluginListenAddress string   `json:"pluginListenAddress,omitempty"`
	Plugins             []string `json:"plugins,omitempty"`

	DefaultImageRegistry string `json:"defaultImageRegistry,omitempty"`

	EnforcePodSecurityStandard string `json:"enforcePodSecurityStandard,omitempty"`

	SyncLabels []string `json:"syncLabels,omitempty"`

	// hostpath mapper options
	// this is only needed if using vcluster-hostpath-mapper component
	// see: https://github.com/loft-sh/vcluster-hostpath-mapper
	MountPhysicalHostPaths bool `json:"mountPhysicalHostPaths,omitempty"`

	HostMetricsBindAddress    string `json:"hostMetricsBindAddress,omitempty"`
	VirtualMetricsBindAddress string `json:"virtualMetricsBindAddress,omitempty"`

	MultiNamespaceMode bool `json:"multiNamespaceMode,omitempty"`
	SyncAllSecrets     bool `json:"syncAllSecrets,omitempty"`
	SyncAllConfigMaps  bool `json:"syncAllConfigMaps,omitempty"`

	ProxyMetricsServer         bool `json:"proxyMetricsServer,omitempty"`
	ServiceAccountTokenSecrets bool `json:"serviceAccountTokenSecrets,omitempty"`

	// DEPRECATED FLAGS
	DeprecatedSyncNodeChanges bool `json:"syncNodeChanges"`
}

LegacyVirtualClusterOptions holds the cmd flags

type LegacyVirtualClusterProOptions

type LegacyVirtualClusterProOptions struct {
	RemoteKubeConfig  string `json:"remoteKubeConfig,omitempty"`
	RemoteNamespace   string `json:"remoteNamespace,omitempty"`
	RemoteServiceName string `json:"remoteServiceName,omitempty"`
	EtcdReplicas      int    `json:"etcdReplicas,omitempty"`
	IntegratedCoredns bool   `json:"integratedCoreDNS,omitempty"`
	EtcdEmbedded      bool   `json:"etcdEmbedded,omitempty"`

	NoopSyncer            bool `json:"noopSyncer,omitempty"`
	SyncKubernetesService bool `json:"synck8sService,omitempty"`
}

type MapServices

type MapServices struct {
	FromVirtual []config.ServiceMapping `json:"fromVirtual,omitempty"`
	FromHost    []config.ServiceMapping `json:"fromHost,omitempty"`
}

type MetricsProxyServerConfig

type MetricsProxyServerConfig struct {
	Nodes EnabledSwitch `json:"nodes,omitempty"`
	Pods  EnabledSwitch `json:"pods,omitempty"`
}

type MonitoringValues

type MonitoringValues struct {
	ServiceMonitor ServiceMonitor `json:"serviceMonitor,omitempty"`
}

type NetworkPolicyValues

type NetworkPolicyValues struct {
	Enabled             *bool                      `json:"enabled,omitempty"`
	OutgoingConnections config.OutgoingConnections `json:"outgoingConnections,omitempty"`
}

type NoopSyncerValues

type NoopSyncerValues struct {
	Enabled        bool `json:"enabled,omitempty"`
	Synck8sService bool `json:"synck8sService,omitempty"`
	Secret         struct {
		ServerCaCert        string `json:"serverCaCert,omitempty"`
		ServerCaKey         string `json:"serverCaKey,omitempty"`
		ClientCaCert        string `json:"clientCaCert,omitempty"`
		RequestHeaderCaCert string `json:"requestHeaderCaCert,omitempty"`
		KubeConfig          string `json:"kubeConfig,omitempty"`
	} `json:"secret,omitempty"`
}

type PDBValues

type PDBValues struct {
	Enabled        bool        `json:"enabled,omitempty"`
	MinAvailable   interface{} `json:"minAvailable,omitempty"`
	MaxUnavailable interface{} `json:"maxUnavailable,omitempty"`
}

type ProxyValues

type ProxyValues struct {
	MetricsServer MetricsProxyServerConfig `json:"metricsServer,omitempty"`
}

type RBACClusterRoleValues

type RBACClusterRoleValues struct {
	Create     *bool                    `json:"create,omitempty"`
	ExtraRules []map[string]interface{} `json:"extraRules,omitempty"`
}

type RBACRoleValues

type RBACRoleValues struct {
	Create               *bool                    `json:"create,omitempty"`
	ExtraRules           []map[string]interface{} `json:"extraRules,omitempty"`
	ExcludedAPIResources []string                 `json:"excludedApiResources,omitempty"`
}

type RBACRule

type RBACRule struct {
	// Verbs is a list of Verbs that apply to ALL the ResourceKinds contained in this rule. '*' represents all verbs.
	Verbs []string `json:"verbs" protobuf:"bytes,1,rep,name=verbs"`
	// APIGroups is the name of the APIGroup that contains the resources.  If multiple API groups are specified, any action requested against one of
	// the enumerated resources in any API group will be allowed. "" represents the core API group and "*" represents all API groups.
	// +optional
	APIGroups []string `json:"apiGroups,omitempty" protobuf:"bytes,2,rep,name=apiGroups"`
	// Resources is a list of resources this rule applies to. '*' represents all resources.
	// +optional
	Resources []string `json:"resources,omitempty" protobuf:"bytes,3,rep,name=resources"`
	// ResourceNames is an optional white list of names that the rule applies to.  An empty set means that everything is allowed.
	// +optional
	ResourceNames []string `json:"resourceNames,omitempty" protobuf:"bytes,4,rep,name=resourceNames"`
	// NonResourceURLs is a set of partial urls that a user should have access to.  *s are allowed, but only as the full, final step in the path
	// Since non-resource URLs are not namespaced, this field is only applicable for ClusterRoles referenced from a ClusterRoleBinding.
	// Rules can either apply to API resources (such as "pods" or "secrets") or non-resource URL paths (such as "/api"),  but not both.
	// +optional
	NonResourceURLs []string `json:"nonResourceURLs,omitempty" protobuf:"bytes,5,rep,name=nonResourceURLs"`
}

type RBACValues

type RBACValues struct {
	ClusterRole RBACClusterRoleValues `json:"clusterRole,omitempty"`
	Role        RBACRoleValues        `json:"role,omitempty"`
}

These should be remove from the chart first as they are deprecated there

type Record

type Record struct {
	RecordType RecordType `json:"recordType,omitempty"`
	FQDN       *string    `json:"fqdn,omitempty"`
	Service    *string    `json:"service,omitempty"`
	Namespace  *string    `json:"namespace,omitempty"`
}

type RecordType

type RecordType string

type SchedulerValues

type SchedulerValues struct {
	SyncerExORCommonValues
	ControlPlaneCommonValues
	Disabled bool `json:"disabled,omitempty"`
}

type ServiceMonitor

type ServiceMonitor struct {
	Enabled bool `json:"enabled,omitempty"`
}

type ServiceValues

type ServiceValues struct {
	Type                     string            `json:"type,omitempty"`
	ExternalIPs              []string          `json:"externalIPs,omitempty"`
	ExternalTrafficPolicy    string            `json:"externalTrafficPolicy,omitempty"`
	LoadBalancerIP           string            `json:"loadBalancerIP,omitempty"`
	LoadBalancerSourceRanges []string          `json:"loadBalancerSourceRanges,omitempty"`
	LoadBalancerClass        string            `json:"loadBalancerClass,omitempty"`
	LoadBalancerAnnotation   map[string]string `json:"loadBalancerAnnotations,omitempty"`
}

type Storage

type Storage struct {
	Persistence *bool  `json:"persistence,omitempty"`
	Size        string `json:"size,omitempty"`
	ClassName   string `json:"className,omitempty"`
}

type SyncConfigMaps

type SyncConfigMaps struct {
	Enabled *bool `json:"enabled,omitempty"`
	All     bool  `json:"all,omitempty"`
}

type SyncGeneric

type SyncGeneric struct {
	RBACValues
	Config string `json:"config,omitempty"`
}

type SyncNodes

type SyncNodes struct {
	Enabled *bool `json:"enabled,omitempty"`

	FakeKubeletIPs  *bool  `json:"fakeKubeletIPs,omitempty"`
	SyncAllNodes    *bool  `json:"syncAllNodes,omitempty"`
	NodeSelector    string `json:"nodeSelector,omitempty"`
	EnableScheduler *bool  `json:"enableScheduler,omitempty"`
	SyncNodeChanges *bool  `json:"syncNodeChanges,omitempty"`
}

type SyncPods

type SyncPods struct {
	Enabled             *bool `json:"enabled,omitempty"`
	EphemeralContainers *bool `json:"ephemeralContainers,omitempty"`
	Status              *bool `json:"status,omitempty"`
}

type SyncSecrets

type SyncSecrets struct {
	Enabled *bool `json:"enabled,omitempty"`
	All     bool  `json:"all,omitempty"`
}

type SyncValues

type SyncValues struct {
	Services               EnabledSwitch  `json:"services,omitempty"`
	Configmaps             SyncConfigMaps `json:"configmaps,omitempty"`
	Secrets                SyncSecrets    `json:"secrets,omitempty"`
	Endpoints              EnabledSwitch  `json:"endpoints,omitempty"`
	Pods                   SyncPods       `json:"pods,omitempty"`
	Events                 EnabledSwitch  `json:"events,omitempty"`
	PersistentVolumeClaims EnabledSwitch  `json:"persistentvolumeclaims,omitempty"`
	Ingresses              EnabledSwitch  `json:"ingresses,omitempty"`
	Ingressclasses         EnabledSwitch  `json:"ingressclasses,omitempty"`
	FakeNodes              EnabledSwitch  `json:"fake-nodes,omitempty"`
	FakePersistentvolumes  EnabledSwitch  `json:"fake-persistentvolumes,omitempty"`
	Nodes                  SyncNodes      `json:"nodes,omitempty"`
	PersistentVolumes      EnabledSwitch  `json:"persistentvolumes,omitempty"`
	StorageClasses         EnabledSwitch  `json:"storageclasses,omitempty"`
	Hoststorageclasses     EnabledSwitch  `json:"hoststorageclasses,omitempty"`
	Priorityclasses        EnabledSwitch  `json:"priorityclasses,omitempty"`
	Networkpolicies        EnabledSwitch  `json:"networkpolicies,omitempty"`
	Volumesnapshots        EnabledSwitch  `json:"volumesnapshots,omitempty"`
	Poddisruptionbudgets   EnabledSwitch  `json:"poddisruptionbudgets,omitempty"`
	Serviceaccounts        EnabledSwitch  `json:"serviceaccounts,omitempty"`
	CSIStorageCapacities   EnabledSwitch  `json:"csistoragecapacities,omitempty"`
	CSINodes               EnabledSwitch  `json:"csinodes,omitempty"`
	CSIDrivers             EnabledSwitch  `json:"csidrivers,omitempty"`
	Generic                SyncGeneric    `json:"generic,omitempty"`
}

type SyncerExORCommonValues

type SyncerExORCommonValues struct {
	ExtraArgs []string          `json:"extraArgs,omitempty"`
	Resources *config.Resources `json:"resources,omitempty"`
}

type SyncerValues

type SyncerValues struct {
	ControlPlaneCommonValues
	ExtraArgs             []string                 `json:"extraArgs,omitempty"`
	Env                   []map[string]interface{} `json:"env,omitempty"`
	LivenessProbe         EnabledSwitch            `json:"livenessProbe,omitempty"`
	ReadinessProbe        EnabledSwitch            `json:"readinessProbe,omitempty"`
	VolumeMounts          []map[string]interface{} `json:"volumeMounts,omitempty"`
	ExtraVolumeMounts     []config.VolumeMount     `json:"extraVolumeMounts,omitempty"`
	Resources             config.Resources         `json:"resources,omitempty"`
	KubeConfigContextName string                   `json:"kubeConfigContextName,omitempty"`
	ServiceAnnotations    map[string]string        `json:"serviceAnnotations,omitempty"`
	Replicas              int32                    `json:"replicas,omitempty"`
	Storage               Storage                  `json:"storage,omitempty"`
	Labels                map[string]string        `json:"labels,omitempty"`
	Annotations           map[string]string        `json:"annotations,omitempty"`
}

type Target

type Target struct {
	Mode      TargetMode `json:"mode,omitempty"`
	VCluster  *string    `json:"vcluster,omitempty"`
	URL       *string    `json:"url,omitempty"`
	Service   *string    `json:"service,omitempty"`
	Namespace *string    `json:"namespace,omitempty"`
}

type TargetMode

type TargetMode string

type TelemetryValues

type TelemetryValues struct {
	Disabled           config.StrBool `json:"disabled,omitempty"`
	InstanceCreator    string         `json:"instanceCreator,omitempty"`
	PlatformUserID     string         `json:"platformUserID,omitempty"`
	PlatformInstanceID string         `json:"platformInstanceID,omitempty"`
	MachineID          string         `json:"machineID,omitempty"`
}

type VClusterValues

type VClusterValues struct {
	Image             string                   `json:"image,omitempty"`
	ImagePullPolicy   string                   `json:"imagePullPolicy,omitempty"`
	Command           []string                 `json:"command,omitempty"`
	BaseArgs          []string                 `json:"baseArgs,omitempty"`
	ExtraArgs         []string                 `json:"extraArgs,omitempty"`
	ExtraVolumeMounts []config.VolumeMount     `json:"extraVolumeMounts,omitempty"`
	VolumeMounts      []map[string]interface{} `json:"volumeMounts,omitempty"`
	Env               []map[string]interface{} `json:"env,omitempty"`
	Resources         map[string]interface{}   `json:"resources,omitempty"`

	// this is only provided in context of k0s right now
	PriorityClassName string `json:"priorityClassName,omitempty"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL