config

package
v0.68.0-rc0 Latest Latest
Warning

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

Go to latest
Published: Feb 5, 2026 License: Apache-2.0 Imports: 20 Imported by: 0

Documentation

Index

Constants

View Source
const (
	UnlimitedQuantity = "unlimited"
)

Variables

This section is empty.

Functions

func ConfigAsMetrics added in v0.62.0

func ConfigAsMetrics(r metrics.RegistererGatherer, cfg *BaseOperatorConf)

ConfigAsMetrics exposes major configuration params as prometheus metrics

func GetLocalhost added in v0.67.0

func GetLocalhost() string

GetLocalhost returns localhost value depending on global configuration

func IsClusterWideAccessAllowed added in v0.34.0

func IsClusterWideAccessAllowed() bool

IsClusterWideAccessAllowed checks if cluster wide access for components is needed

Types

type ApplicationDefaults added in v0.48.0

type ApplicationDefaults struct {
	Image               string
	Version             string
	Port                string
	UseDefaultResources bool
	Resource            struct {
		Limit struct {
			Mem              string
			Cpu              string
			EphemeralStorage string
		}
		Request struct {
			Mem              string
			Cpu              string
			EphemeralStorage string
		}
	}
}

ApplicationDefaults is useful for generic default building uses the same memory as application default at config

type BaseOperatorConf

type BaseOperatorConf struct {
	MetricsVersion    string `default:"${VM_METRICS_VERSION}" env:"VM_METRICS_VERSION,expand"`
	LogsVersion       string `default:"${VM_LOGS_VERSION}" env:"VM_LOGS_VERSION,expand"`
	AnomalyVersion    string `default:"${VM_ANOMALY_VERSION}" env:"VM_ANOMALY_VERSION,expand"`
	TracesVertsion    string `default:"${VM_TRACES_VERSION}" env:"VM_TRACES_VERSION,expand"`
	OperatorVersion   string `default:"${VM_OPERATOR_VERSION}" env:"VM_OPERATOR_VERSION,expand"`
	GatewayAPIEnabled bool   `default:"false" env:"VM_GATEWAY_API_ENABLED"`

	// Defines a list of namespaces to be watched by operator.
	// Operator don't perform any cluster wide API calls if namespaces not empty.
	// In case of empty list it performs only clusterwide api calls.
	WatchNamespaces []string `default:"" env:"WATCH_NAMESPACE"`

	// container registry name prefix, e.g. docker.io
	ContainerRegistry string `default:"" env:"VM_CONTAINERREGISTRY"`
	// Deprecated: use VM_CONFIG_RELOADER_IMAGE instead
	CustomConfigReloaderImage string `env:"VM_CUSTOMCONFIGRELOADERIMAGE"`
	PSPAutoCreateEnabled      bool   `default:"false" env:"VM_PSPAUTOCREATEENABLED"`
	EnableTCP6                bool   `default:"false" env:"VM_ENABLETCP6"`

	// defines global config reloader parameters
	ConfigReloader struct {
		// default image for all config-reloader containers
		Image    string `default:"victoriametrics/operator:config-reloader-${VM_OPERATOR_VERSION}" env:",expand"`
		Resource struct {
			Limit struct {
				// defines global resource.limits.memory for all config-reloader containers
				Mem string `default:"unlimited" env:"MEMORY"`
				// defines global resource.limits.cpu for all config-reloader containers
				Cpu string `default:"unlimited"`
				// defines global resource.limits.ephemeral-storage for all config-reloader containers
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				// defines global resource.requests.memory for all config-reloader containers
				Mem string `default:"25Mi" env:"MEMORY"`
				// defines global resource.requests.cpu for all config-reloader containers
				Cpu string `default:"10m"`
				// defines global resource.requests.ephemeral-storage for all config-reloader containers
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		}
	} `prefix:"VM_CONFIG_RELOADER_"`

	VLogsDefault struct {
		Image               string `default:"victoriametrics/victoria-logs"`
		Version             string `env:",expand" default:"${VM_LOGS_VERSION}"`
		Port                string `default:"9428"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"1500Mi"`
				Cpu              string `default:"1200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"150m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VLOGSDEFAULT_"`

	VLAgentDefault struct {
		Image               string `default:"victoriametrics/vlagent"`
		Version             string `env:",expand" default:"${VM_LOGS_VERSION}"`
		Port                string `default:"9429"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"200Mi"`
				Cpu              string `default:"50m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VLAGENTDEFAULT_"`

	VLSingleDefault struct {
		Image               string `default:"victoriametrics/victoria-logs"`
		Version             string `env:",expand" default:"${VM_LOGS_VERSION}"`
		Port                string `default:"9428"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"1500Mi"`
				Cpu              string `default:"1200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"150m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VLSINGLEDEFAULT_"`

	VTSingleDefault struct {
		Image               string `default:"victoriametrics/victoria-traces"`
		Version             string `env:",expand" default:"${VM_TRACES_VERSION}"`
		Port                string `default:"10428"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"1500Mi"`
				Cpu              string `default:"1200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"150m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VTSINGLEDEFAULT_"`

	VMAlertDefault struct {
		Image               string `default:"victoriametrics/vmalert"`
		Version             string `env:",expand" default:"${VM_METRICS_VERSION}"`
		Port                string `default:"8080"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"200Mi"`
				Cpu              string `default:"50m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMALERTDEFAULT_"`

	VMServiceScrapeDefault struct {
		// Use endpointslices instead of endpoints as discovery role
		// for vmservicescrape when generate scrape config for vmagent.
		EnforceEndpointSlices bool `default:"false" env:"ENFORCEENDPOINTSLICES"`
	} `prefix:"VM_VMSERVICESCRAPEDEFAULT_"`

	VMAgentDefault struct {
		Image               string `default:"victoriametrics/vmagent"`
		Version             string `env:",expand" default:"${VM_METRICS_VERSION}"`
		Port                string `default:"8429"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"200Mi"`
				Cpu              string `default:"50m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMAGENTDEFAULT_"`

	VMAnomalyDefault struct {
		Image               string `default:"victoriametrics/vmanomaly"`
		Version             string `env:",expand" default:"${VM_ANOMALY_VERSION}"`
		Port                string `default:"8490"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"200Mi"`
				Cpu              string `default:"50m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMANOMALYDEFAULT_"`

	VMSingleDefault struct {
		Image               string `default:"victoriametrics/victoria-metrics"`
		Version             string `env:",expand" default:"${VM_METRICS_VERSION}"`
		Port                string `default:"8429"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"1500Mi"`
				Cpu              string `default:"1200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"150m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMSINGLEDEFAULT_"`

	VMClusterDefault struct {
		UseDefaultResources bool `default:"true" env:"USEDEFAULTRESOURCES"`
		VMSelectDefault     struct {
			Image    string `default:"victoriametrics/vmselect"`
			Version  string `env:",expand" default:"${VM_METRICS_VERSION}-cluster"`
			Port     string `default:"8481"`
			Resource struct {
				Limit struct {
					Mem              string `default:"1000Mi"`
					Cpu              string `default:"500m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"500Mi"`
					Cpu              string `default:"100m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VMSELECTDEFAULT_"`
		VMStorageDefault struct {
			Image        string `default:"victoriametrics/vmstorage"`
			Version      string `env:",expand" default:"${VM_METRICS_VERSION}-cluster"`
			VMInsertPort string `default:"8400" env:"VMINSERTPORT"`
			VMSelectPort string `default:"8401" env:"VMSELECTPORT"`
			Port         string `default:"8482"`
			Resource     struct {
				Limit struct {
					Mem              string `default:"1500Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"500Mi"`
					Cpu              string `default:"250m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VMSTORAGEDEFAULT_"`
		VMInsertDefault struct {
			Image    string `default:"victoriametrics/vminsert"`
			Version  string `env:",expand" default:"${VM_METRICS_VERSION}-cluster"`
			Port     string `default:"8480"`
			Resource struct {
				Limit struct {
					Mem              string `default:"500Mi"`
					Cpu              string `default:"500m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"200Mi"`
					Cpu              string `default:"150m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VMINSERTDEFAULT_"`
	} `prefix:"VM_VMCLUSTERDEFAULT_"`

	VMAlertManager struct {
		AlertmanagerDefaultBaseImage string `default:"prom/alertmanager" env:"ALERTMANAGERDEFAULTBASEIMAGE"`
		AlertManagerVersion          string `default:"v0.31.0" env:"ALERTMANAGERVERSION"`
		UseDefaultResources          bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource                     struct {
			Limit struct {
				Mem              string `default:"256Mi"`
				Cpu              string `default:"100m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"56Mi"`
				Cpu              string `default:"30m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMALERTMANAGER_"`

	DisableSelfServiceScrapeCreation bool `default:"false" env:"VM_DISABLESELFSERVICESCRAPECREATION"`
	VMBackup                         struct {
		Image               string `default:"victoriametrics/vmbackupmanager"`
		Version             string `env:",expand" default:"${VM_METRICS_VERSION}-enterprise"`
		Port                string `default:"8300"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"500Mi"`
				Cpu              string `default:"500m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"200Mi"`
				Cpu              string `default:"150m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMBACKUP_"`
	VMAuthDefault struct {
		Image               string `default:"victoriametrics/vmauth"`
		Version             string `env:",expand" default:"${VM_METRICS_VERSION}"`
		Port                string `default:"8427"`
		UseDefaultResources bool   `default:"true" env:"USEDEFAULTRESOURCES"`
		Resource            struct {
			Limit struct {
				Mem              string `default:"300Mi"`
				Cpu              string `default:"200m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"LIMIT_"`
			Request struct {
				Mem              string `default:"100Mi"`
				Cpu              string `default:"50m"`
				EphemeralStorage string `default:"unlimited"`
			} `prefix:"REQUEST_"`
		} `prefix:"RESOURCE_"`
	} `prefix:"VM_VMAUTHDEFAULT_"`

	VLClusterDefault struct {
		UseDefaultResources bool `default:"true" env:"USEDEFAULTRESOURCES"`
		VLSelectDefault     struct {
			Image    string `default:"victoriametrics/victoria-logs"`
			Version  string `env:",expand" default:"${VM_LOGS_VERSION}"`
			Port     string `default:"9471"`
			Resource struct {
				Limit struct {
					Mem              string `default:"1024Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"256Mi"`
					Cpu              string `default:"100m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VLSELECTDEFAULT_"`
		VLStorageDefault struct {
			Image    string `default:"victoriametrics/victoria-logs"`
			Version  string `env:",expand" default:"${VM_LOGS_VERSION}"`
			Port     string `default:"9491"`
			Resource struct {
				Limit struct {
					Mem              string `default:"2048Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"512Mi"`
					Cpu              string `default:"200m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VLSTORAGEDEFAULT_"`
		VLInsertDefault struct {
			Image    string `default:"victoriametrics/victoria-logs"`
			Version  string `env:",expand" default:"${VM_LOGS_VERSION}"`
			Port     string `default:"9481"`
			Resource struct {
				Limit struct {
					Mem              string `default:"1024Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"256Mi"`
					Cpu              string `default:"100m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"VLINSERTDEFAULT_"`
	} `prefix:"VM_VLCLUSTERDEFAULT_"`

	VTClusterDefault struct {
		UseDefaultResources bool `default:"true" env:"USEDEFAULTRESOURCES"`
		SelectDefault       struct {
			Image    string `default:"victoriametrics/victoria-traces"`
			Version  string `env:",expand" default:"${VM_TRACES_VERSION}"`
			Port     string `default:"10471"`
			Resource struct {
				Limit struct {
					Mem              string `default:"1024Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"256Mi"`
					Cpu              string `default:"100m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"SELECT_"`
		StorageDefault struct {
			Image    string `default:"victoriametrics/victoria-traces"`
			Version  string `env:",expand" default:"${VM_TRACES_VERSION}"`
			Port     string `default:"10491"`
			Resource struct {
				Limit struct {
					Mem              string `default:"2048Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"512Mi"`
					Cpu              string `default:"200m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"STORAGE_"`
		InsertDefault struct {
			Image    string `default:"victoriametrics/victoria-traces"`
			Version  string `env:",expand" default:"${VM_TRACES_VERSION}"`
			Port     string `default:"10481"`
			Resource struct {
				Limit struct {
					Mem              string `default:"1024Mi"`
					Cpu              string `default:"1000m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"LIMIT_"`
				Request struct {
					Mem              string `default:"256Mi"`
					Cpu              string `default:"100m"`
					EphemeralStorage string `default:"unlimited"`
				} `prefix:"REQUEST_"`
			} `prefix:"RESOURCE_"`
		} `prefix:"INSERT_"`
	} `prefix:"VM_VTCLUSTERDEFAULT_"`

	EnabledPrometheusConverter struct {
		PodMonitor         bool `default:"true" env:"PODMONITOR"`
		ServiceScrape      bool `default:"true" env:"SERVICESCRAPE"`
		PrometheusRule     bool `default:"true" env:"PROMETHEUSRULE"`
		Probe              bool `default:"true" env:"PROBE"`
		AlertmanagerConfig bool `default:"true" env:"ALERTMANAGERCONFIG"`
		ScrapeConfig       bool `default:"true" env:"SCRAPECONFIG"`
	} `prefix:"VM_ENABLEDPROMETHEUSCONVERTER_"`
	// adds compare-options and sync-options for prometheus objects converted by operator.
	// It helps to properly use converter with ArgoCD
	PrometheusConverterAddArgoCDIgnoreAnnotations bool `default:"false" env:"VM_PROMETHEUSCONVERTERADDARGOCDIGNOREANNOTATIONS"`
	EnabledPrometheusConverterOwnerReferences     bool `default:"false" env:"VM_ENABLEDPROMETHEUSCONVERTEROWNERREFERENCES"`
	// allows filtering for converted labels, labels with matched prefix will be ignored
	FilterPrometheusConverterLabelPrefixes []string `default:"" env:"VM_FILTERPROMETHEUSCONVERTERLABELPREFIXES"`
	// allows filtering for converted annotations, annotations with matched prefix will be ignored
	FilterPrometheusConverterAnnotationPrefixes []string `default:"" env:"VM_FILTERPROMETHEUSCONVERTERANNOTATIONPREFIXES"`
	// Defines domain name suffix for in-cluster addresses
	// most known ClusterDomainName is .cluster.local
	ClusterDomainName string `default:"" env:"VM_CLUSTERDOMAINNAME"`
	// Defines deadline for deployment/statefulset
	// to transit into ready state
	// to wait for transition to ready state
	AppReadyTimeout time.Duration `default:"80s" env:"VM_APPREADYTIMEOUT"`
	// Defines single pod deadline
	// to wait for transition to ready state
	PodWaitReadyTimeout time.Duration `default:"80s" env:"VM_PODWAITREADYTIMEOUT"`
	// Defines poll interval for pods ready check
	// at statefulset rollout update
	PodWaitReadyIntervalCheck time.Duration `default:"5s" env:"VM_PODWAITREADYINTERVALCHECK"`
	// configures force resync interval for VMAgent, VMAlert, VMAlertmanager and VMAuth.
	ForceResyncInterval time.Duration `default:"60s" env:"VM_FORCERESYNCINTERVAL"`
	// EnableStrictSecurity will add default `securityContext` to pods and containers created by operator
	// Default PodSecurityContext include:
	// 1. RunAsNonRoot: true
	// 2. RunAsUser/RunAsGroup/FSGroup: 65534
	// '65534' refers to 'nobody' in all the used default images like alpine, busybox.
	// If you're using customize image, please make sure '65534' is a valid uid in there or specify SecurityContext.
	// 3. FSGroupChangePolicy: &onRootMismatch
	// If KubeVersion>=1.20, use `FSGroupChangePolicy="onRootMismatch"` to skip the recursive permission change
	// when the root of the volume already has the correct permissions
	// 4. SeccompProfile:
	//      type: RuntimeDefault
	// Use `RuntimeDefault` seccomp profile by default, which is defined by the container runtime,
	// instead of using the Unconfined (seccomp disabled) mode.
	//
	// Default container SecurityContext include:
	// 1. AllowPrivilegeEscalation: false
	// 2. ReadOnlyRootFilesystem: true
	// 3. Capabilities:
	//      drop:
	//        - all
	// turn off `EnableStrictSecurity` by default, see https://github.com/VictoriaMetrics/operator/issues/749 for details
	EnableStrictSecurity bool `default:"false" env:"VM_ENABLESTRICTSECURITY"`
}

func MustGetBaseConfig

func MustGetBaseConfig() *BaseOperatorConf

MustGetBaseConfig returns operator configuration with default values populated from env variables

func (*BaseOperatorConf) PrintDefaults added in v0.38.0

func (boc *BaseOperatorConf) PrintDefaults(format string) error

PrintDefaults prints default values for all config variables. format can be one of: table, list, json, yaml, markdown.

func (*BaseOperatorConf) ResyncAfterDuration added in v0.48.0

func (boc *BaseOperatorConf) ResyncAfterDuration() time.Duration

ResyncAfterDuration returns requeue duration for object period reconcile adds 10% jitter

type Labels

type Labels struct {
	LabelsString string
	LabelsMap    map[string]string
}

func (*Labels) Merge

func (labels *Labels) Merge(otherLabels map[string]string) map[string]string

Merge labels create a new map with labels merged.

func (*Labels) Set

func (labels *Labels) Set(value string) error

Set implements the flag.Set interface.

func (*Labels) String

func (labels *Labels) String() string

Implement the flag.Value interface

type Resource added in v0.10.0

type Resource struct {
	Limit struct {
		Mem              string
		Cpu              string
		EphemeralStorage string
	}
	Request struct {
		Mem              string
		Cpu              string
		EphemeralStorage string
	}
}

Resource is useful for generic resource building uses the same memory layout as resources at config

Jump to

Keyboard shortcuts

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