Documentation ¶
Overview ¶
Package v1alpha1 implements the v1alpha1 apiVersion of kwok's configuration
Index ¶
- Constants
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetObjectDefaults_KwokConfiguration(in *KwokConfiguration)
- func SetObjectDefaults_KwokctlConfiguration(in *KwokctlConfiguration)
- func SetObjectDefaults_Stage(in *Stage)
- type Component
- type Env
- type ExpressionFromSource
- type FinalizerItem
- type KwokConfiguration
- type KwokConfigurationOptions
- type KwokctlConfiguration
- type KwokctlConfigurationOptions
- type Port
- type Protocol
- type SelectorOperator
- type SelectorRequirement
- type Stage
- type StageDelay
- type StageEvent
- type StageFinalizers
- type StageNext
- type StageResourceRef
- type StageSelector
- type StageSpec
- type Volume
Constants ¶
const ( KwokctlConfigurationKind = "KwokctlConfiguration" // ModeStableFeatureGateAndAPI is intended to reduce cluster configuration requirements // Disables all Alpha feature by default, as well as Beta feature that are not eventually GA ModeStableFeatureGateAndAPI = "StableFeatureGateAndAPI" )
const (
KwokConfigurationKind = "KwokConfiguration"
)
const (
StageKind = "Stage"
)
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{ Group: "kwok.x-k8s.io", Version: "v1alpha1", } )
Functions ¶
func RegisterDefaults ¶
RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.
func SetObjectDefaults_KwokConfiguration ¶
func SetObjectDefaults_KwokConfiguration(in *KwokConfiguration)
func SetObjectDefaults_KwokctlConfiguration ¶
func SetObjectDefaults_KwokctlConfiguration(in *KwokctlConfiguration)
func SetObjectDefaults_Stage ¶
func SetObjectDefaults_Stage(in *Stage)
Types ¶
type Component ¶
type Component struct { // Name of the component specified as a DNS_LABEL. // Each component must have a unique name (DNS_LABEL). // Cannot be updated. Name string `json:"name,omitempty"` // Links is a set of links for the component. // +optional Links []string `json:"links,omitempty"` // Binary is the binary of the component. // +optional Binary string `json:"binary,omitempty"` // Image is the image of the component. // +optional Image string `json:"image,omitempty"` // Command is Entrypoint array. Not executed within a shell. Only works with Image. // +optional Command []string `json:"command,omitempty"` // Args is Arguments to the entrypoint. // +optional Args []string `json:"args,omitempty"` // WorkDir is component's working directory. // +optional WorkDir string `json:"workDir,omitempty"` // Ports is list of ports to expose from the component. // +optional Ports []Port `json:"ports,omitempty"` // Envs is list of environment variables to set in the component. // +optional Envs []Env `json:"envs,omitempty"` // Volumes is a list of named volumes that can be mounted by containers belonging to the component. // +optional Volumes []Volume `json:"volumes,omitempty"` // Version is the version of the component. // +optional Version string `json:"version,omitempty"` }
func (*Component) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Component.
func (*Component) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Env ¶
type Env struct { // Name of the environment variable. Name string `json:"name"` // Value is using the previously defined environment variables in the component. // +optional // +default="" Value string `json:"value,omitempty"` }
Env represents an environment variable present in a Container.
func (*Env) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Env.
func (*Env) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExpressionFromSource ¶
type ExpressionFromSource struct { // ExpressionFrom is the expression used to get the value. ExpressionFrom string `json:"expressionFrom,omitempty"` }
ExpressionFromSource represents a source for the value of a from.
func (*ExpressionFromSource) DeepCopy ¶
func (in *ExpressionFromSource) DeepCopy() *ExpressionFromSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExpressionFromSource.
func (*ExpressionFromSource) DeepCopyInto ¶
func (in *ExpressionFromSource) DeepCopyInto(out *ExpressionFromSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FinalizerItem ¶
type FinalizerItem struct {
Value string `json:"value,omitempty"`
}
FinalizerItem describes the one of the finalizers.
func (*FinalizerItem) DeepCopy ¶
func (in *FinalizerItem) DeepCopy() *FinalizerItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FinalizerItem.
func (*FinalizerItem) DeepCopyInto ¶
func (in *FinalizerItem) DeepCopyInto(out *FinalizerItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KwokConfiguration ¶
type KwokConfiguration struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata metav1.ObjectMeta `json:"metadata,omitempty"` // Options holds information about the default value. Options KwokConfigurationOptions `json:"options,omitempty"` }
KwokConfiguration provides configuration for the Kwok.
func (*KwokConfiguration) DeepCopy ¶
func (in *KwokConfiguration) DeepCopy() *KwokConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KwokConfiguration.
func (*KwokConfiguration) DeepCopyInto ¶
func (in *KwokConfiguration) DeepCopyInto(out *KwokConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KwokConfiguration) DeepCopyObject ¶
func (in *KwokConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KwokConfigurationOptions ¶
type KwokConfigurationOptions struct { // The default IP assigned to the Pod on maintained Nodes. // is the default value for flag --cidr // +default="10.0.0.1/24" CIDR string `json:"cidr,omitempty"` // The ip of all nodes maintained by the Kwok // is the default value for flag --node-ip NodeIP string `json:"nodeIP,omitempty"` // The name of all nodes maintained by the Kwok // is the default value for flag --node-name NodeName string `json:"nodeName,omitempty"` // The port of all nodes maintained by the Kwok // is the default value for flag --node-port NodePort int `json:"nodePort,omitempty"` // TLSCertFile is the file containing x509 Certificate for HTTPS. // If HTTPS serving is enabled, and --tls-cert-file and --tls-private-key-file // is the default value for flag --tls-cert-file TLSCertFile string `json:"tlsCertFile,omitempty"` // TLSPrivateKeyFile is the ile containing x509 private key matching --tls-cert-file. // is the default value for flag --tls-private-key-file TLSPrivateKeyFile string `json:"tlsPrivateKeyFile,omitempty"` // Default option to manage (i.e., maintain heartbeat/liveness of) all Nodes or not. // is the default value for flag --manage-all-nodes // +default=false ManageAllNodes *bool `json:"manageAllNodes,omitempty"` // Default annotations specified on Nodes to demand manage. // Note: when `all-node-manage` is specified as true, this is a no-op. // is the default value for flag --manage-nodes-with-annotation-selector ManageNodesWithAnnotationSelector string `json:"manageNodesWithAnnotationSelector,omitempty"` // Default labels specified on Nodes to demand manage. // Note: when `all-node-manage` is specified as true, this is a no-op. // is the default value for flag --manage-nodes-with-label-selector ManageNodesWithLabelSelector string `json:"manageNodesWithLabelSelector,omitempty"` // If a Node/Pod is on a managed Node and has this annotation status will not be modified // is the default value for flag --disregard-status-with-annotation-selector DisregardStatusWithAnnotationSelector string `json:"disregardStatusWithAnnotationSelector,omitempty"` // If a Node/Pod is on a managed Node and has this label status will not be modified // is the default value for flag --disregard-status-with-label-selector DisregardStatusWithLabelSelector string `json:"disregardStatusWithLabelSelector,omitempty"` // ServerAddress is server address of the Kwok. // is the default value for flag --server-address ServerAddress string `json:"serverAddress,omitempty"` // Experimental support for getting pod ip from CNI, for CNI-related components, Only works with Linux. // is the default value for flag --experimental-enable-cni // +default=false EnableCNI *bool `json:"experimentalEnableCNI,omitempty"` // enableDebuggingHandlers enables server endpoints for log collection // and local running of containers and commands // +default=true EnableDebuggingHandlers *bool `json:"enableDebuggingHandlers,omitempty"` // enableContentionProfiling enables lock contention profiling, if enableDebuggingHandlers is true. // +default=false EnableContentionProfiling *bool `json:"enableContentionProfiling,omitempty"` // EnableProfiling enables /debug/pprof handler, if enableDebuggingHandlers is true. // +default=true EnableProfilingHandler *bool `json:"enableProfilingHandler,omitempty"` }
func (*KwokConfigurationOptions) DeepCopy ¶
func (in *KwokConfigurationOptions) DeepCopy() *KwokConfigurationOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KwokConfigurationOptions.
func (*KwokConfigurationOptions) DeepCopyInto ¶
func (in *KwokConfigurationOptions) DeepCopyInto(out *KwokConfigurationOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KwokctlConfiguration ¶
type KwokctlConfiguration struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata metav1.ObjectMeta `json:"metadata,omitempty"` // Options holds information about the default value. Options KwokctlConfigurationOptions `json:"options,omitempty"` // Components holds information about the components. Components []Component `json:"components,omitempty"` }
KwokctlConfiguration provides configuration for the Kwokctl.
func (*KwokctlConfiguration) DeepCopy ¶
func (in *KwokctlConfiguration) DeepCopy() *KwokctlConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KwokctlConfiguration.
func (*KwokctlConfiguration) DeepCopyInto ¶
func (in *KwokctlConfiguration) DeepCopyInto(out *KwokctlConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*KwokctlConfiguration) DeepCopyObject ¶
func (in *KwokctlConfiguration) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type KwokctlConfigurationOptions ¶
type KwokctlConfigurationOptions struct { // KubeApiserverPort is the port to expose apiserver. // is the default value for flag --kube-apiserver-port and env KWOK_KUBE_APISERVER_PORT KubeApiserverPort uint32 `json:"kubeApiserverPort,omitempty"` // Runtime is the runtime to use. // is the default value for flag --runtime and env KWOK_RUNTIME // +default="docker" Runtime string `json:"runtime,omitempty"` // PrometheusPort is the port to expose Prometheus metrics. // is the default value for flag --prometheus-port and env KWOK_PROMETHEUS_PORT PrometheusPort uint32 `json:"prometheusPort,omitempty"` // KwokVersion is the version of Kwok to use. // is the default value for env KWOK_VERSION KwokVersion string `json:"kwokVersion,omitempty"` // KubeVersion is the version of Kubernetes to use. // is the default value for env KWOK_KUBE_VERSION KubeVersion string `json:"kubeVersion,omitempty"` // EtcdVersion is the version of Etcd to use. // is the default value for env KWOK_ETCD_VERSION EtcdVersion string `json:"etcdVersion,omitempty"` // PrometheusVersion is the version of Prometheus to use. // is the default value for env KWOK_PROMETHEUS_VERSION PrometheusVersion string `json:"prometheusVersion,omitempty"` // DockerComposeVersion is the version of docker-compose to use. // is the default value for env KWOK_DOCKER_COMPOSE_VERSION DockerComposeVersion string `json:"dockerComposeVersion,omitempty"` // KindVersion is the version of kind to use. // is the default value for env KWOK_KIND_VERSION KindVersion string `json:"kindVersion,omitempty"` // SecurePort is the apiserver port on which to serve HTTPS with authentication and authorization. // is the default value for flag --secure-port and env KWOK_SECURE_PORT // +default=false SecurePort *bool `json:"securePort,omitempty"` // QuietPull is the flag to quiet the pull. // is the default value for flag --quiet-pull and env KWOK_QUIET_PULL // +default=false QuietPull *bool `json:"quietPull,omitempty"` // KubeSchedulerConfig is the configuration path for kube-scheduler. // is the default value for flag --kube-scheduler-config and env KWOK_KUBE_SCHEDULER_CONFIG KubeSchedulerConfig string `json:"kubeSchedulerConfig,omitempty"` // DisableKubeScheduler is the flag to disable kube-scheduler. // is the default value for flag --disable-kube-scheduler and env KWOK_DISABLE_KUBE_SCHEDULER // +default=false DisableKubeScheduler *bool `json:"disableKubeScheduler,omitempty"` // DisableKubeControllerManager is the flag to disable kube-controller-manager. // is the default value for flag --disable-kube-controller-manager and env KWOK_DISABLE_KUBE_CONTROLLER_MANAGER // +default=false DisableKubeControllerManager *bool `json:"disableKubeControllerManager,omitempty"` // KubeImagePrefix is the prefix of the kubernetes image. // is the default value for env KWOK_KUBE_IMAGE_PREFIX KubeImagePrefix string `json:"kubeImagePrefix,omitempty"` // EtcdImagePrefix is the prefix of the etcd image. // is the default value for env KWOK_ETCD_IMAGE_PREFIX EtcdImagePrefix string `json:"etcdImagePrefix,omitempty"` // KwokImagePrefix is the prefix of the kwok image. // is the default value for env KWOK_IMAGE_PREFIX KwokImagePrefix string `json:"kwokImagePrefix,omitempty"` // PrometheusImagePrefix is the prefix of the Prometheus image. // is the default value for env KWOK_PROMETHEUS_IMAGE_PREFIX PrometheusImagePrefix string `json:"prometheusImagePrefix,omitempty"` // EtcdImage is the image of etcd. // is the default value for flag --etcd-image and env KWOK_ETCD_IMAGE EtcdImage string `json:"etcdImage,omitempty"` // KubeApiserverImage is the image of kube-apiserver. // is the default value for flag --kube-apiserver-image and env KWOK_KUBE_APISERVER_IMAGE KubeApiserverImage string `json:"kubeApiserverImage,omitempty"` // KubeControllerManagerImage is the image of kube-controller-manager. // is the default value for flag --kube-controller-manager-image and env KWOK_KUBE_CONTROLLER_MANAGER_IMAGE KubeControllerManagerImage string `json:"kubeControllerManagerImage,omitempty"` // KubeSchedulerImage is the image of kube-scheduler. // is the default value for flag --kube-scheduler-image and env KWOK_KUBE_SCHEDULER_IMAGE KubeSchedulerImage string `json:"kubeSchedulerImage,omitempty"` // KwokControllerImage is the image of Kwok. // is the default value for flag --contoller-image and env KWOK_CONTROLLER_IMAGE KwokControllerImage string `json:"kwokControllerImage,omitempty"` // PrometheusImage is the image of Prometheus. // is the default value for flag --prometheus-image and env KWOK_PROMETHEUS_IMAGE PrometheusImage string `json:"prometheusImage,omitempty"` // KindNodeImagePrefix is the prefix of the kind node image. // is the default value for env KWOK_KIND_NODE_IMAGE_PREFIX KindNodeImagePrefix string `json:"kindNodeImagePrefix,omitempty"` // KindNodeImage is the image of kind node. // is the default value for flag --kind-node-image and env KWOK_KIND_NODE_IMAGE KindNodeImage string `json:"kindNodeImage,omitempty"` // BinSuffix is the suffix of the all binary. // On Windows is .exe BinSuffix string `json:"binSuffix,omitempty"` // KubeBinaryPrefix is the prefix of the kubernetes binary. // is the default value for env KWOK_KUBE_BINARY_PREFIX KubeBinaryPrefix string `json:"kubeBinaryPrefix,omitempty"` // KubeApiserverBinary is the binary of kube-apiserver. // is the default value for flag --apiserver-binary and env KWOK_KUBE_APISERVER_BINARY KubeApiserverBinary string `json:"kubeApiserverBinary,omitempty"` // KubeControllerManagerBinary is the binary of kube-controller-manager. // is the default value for flag --controller-manager-binary and env KWOK_KUBE_CONTROLLER_MANAGER_BINARY KubeControllerManagerBinary string `json:"kubeControllerManagerBinary,omitempty"` // KubeSchedulerBinary is the binary of kube-scheduler. // is the default value for flag --scheduler-binary and env KWOK_KUBE_SCHEDULER_BINARY KubeSchedulerBinary string `json:"kubeSchedulerBinary,omitempty"` // KubectlBinary is the binary of kubectl. // is the default value for env KWOK_KUBECTL_BINARY KubectlBinary string `json:"kubectlBinary,omitempty"` // EtcdBinaryPrefix is the prefix of the etcd binary. // is the default value for env KWOK_ETCD_BINARY_PREFIX EtcdBinaryPrefix string `json:"etcdBinaryPrefix,omitempty"` // EtcdBinary is the binary of etcd. // is the default value for flag --etcd-binary and env KWOK_ETCD_BINARY EtcdBinary string `json:"etcdBinary,omitempty"` // EtcdBinaryTar is the tar of the binary of etcd. // is the default value for env KWOK_ETCD_BINARY_TAR EtcdBinaryTar string `json:"etcdBinaryTar,omitempty"` // KwokBinaryPrefix is the prefix of the kwok binary. // is the default value for env KWOK_BINARY_PREFIX KwokBinaryPrefix string `json:"kwokBinaryPrefix,omitempty"` // KwokControllerBinary is the binary of kwok. // is the default value for flag --controller-binary and env KWOK_CONTROLLER_BINARY KwokControllerBinary string `json:"kwokControllerBinary,omitempty"` // PrometheusBinaryPrefix is the prefix of the Prometheus binary. // is the default value for env KWOK_PROMETHEUS_PREFIX PrometheusBinaryPrefix string `json:"prometheusBinaryPrefix,omitempty"` // PrometheusBinary is the binary of Prometheus. // is the default value for flag --prometheus-binary and env KWOK_PROMETHEUS_BINARY PrometheusBinary string `json:"prometheusBinary,omitempty"` // PrometheusBinaryTar is the tar of binary of Prometheus. // is the default value for env KWOK_PROMETHEUS_BINARY_TAR PrometheusBinaryTar string `json:"prometheusBinaryTar,omitempty"` // DockerComposeBinaryPrefix is the binary of docker-compose. // is the default value for env KWOK_DOCKER_COMPOSE_BINARY_PREFIX DockerComposeBinaryPrefix string `json:"dockerComposeBinaryPrefix,omitempty"` // DockerComposeBinary is the binary of Docker compose. // is the default value for flag --docker-compose-binary and env KWOK_DOCKER_COMPOSE_BINARY DockerComposeBinary string `json:"dockerComposeBinary,omitempty"` // KindBinaryPrefix is the binary prefix of kind. // is the default value for env KWOK_KIND_BINARY_PREFIX KindBinaryPrefix string `json:"kindBinaryPrefix,omitempty"` // KindBinary is the binary of kind. // is the default value for flag --kind-binary and env KWOK_KIND_BINARY KindBinary string `json:"kindBinary,omitempty"` // Mode is several default parameter templates for clusters // is the default value for env KWOK_MODE Mode string `json:"mode,omitempty"` // KubeFeatureGates is a set of key=value pairs that describe feature gates for alpha/experimental features of Kubernetes. // is the default value for flag --kube-feature-gates and env KWOK_KUBE_FEATURE_DATES KubeFeatureGates string `json:"kubeFeatureGates,omitempty"` // KubeRuntimeConfig is a set of key=value pairs that enable or disable built-in APIs. // is the default value for flag --kube-runtime-config and env KWOK_KUBE_RUNTIME_CONFIG KubeRuntimeConfig string `json:"kubeRuntimeConfig,omitempty"` // KubeAuditPolicy is path to the file that defines the audit policy configuration // is the default value for flag --kube-audit-policy and env KWOK_KUBE_AUDIT_POLICY KubeAuditPolicy string `json:"kubeAuditPolicy,omitempty"` // KubeAuthorization is the flag to enable authorization on secure port. // is the default value for flag --kube-authorization and env KWOK_KUBE_AUTHORIZATION // +default=false KubeAuthorization *bool `json:"kubeAuthorization,omitempty"` // EtcdPeerPort is etcd peer port in the binary runtime EtcdPeerPort uint32 `json:"etcdPeerPort,omitempty"` // EtcdPort is etcd port in the binary runtime EtcdPort uint32 `json:"etcdPort,omitempty"` // KubeControllerManagerPort is kube-controller-manager port in the binary runtime KubeControllerManagerPort uint32 `json:"kubeControllerManagerPort,omitempty"` // KubeSchedulerPort is kube-scheduler port in the binary runtime KubeSchedulerPort uint32 `json:"kubeSchedulerPort,omitempty"` // KwokControllerPort is kube-controller port in the binary runtime KwokControllerPort uint32 `json:"kwokControllerPort,omitempty"` // CacheDir is the directory of the cache. CacheDir string `json:"cacheDir,omitempty"` }
func (*KwokctlConfigurationOptions) DeepCopy ¶
func (in *KwokctlConfigurationOptions) DeepCopy() *KwokctlConfigurationOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KwokctlConfigurationOptions.
func (*KwokctlConfigurationOptions) DeepCopyInto ¶
func (in *KwokctlConfigurationOptions) DeepCopyInto(out *KwokctlConfigurationOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Port ¶
type Port struct { // Name for the port that can be referred to by components. // +optional Name string `json:"name,omitempty"` // Port is number of port to expose on the component's IP address. // This must be a valid port number, 0 < x < 65536. Port uint32 `json:"port"` // HostPort is number of port to expose on the host. // If specified, this must be a valid port number, 0 < x < 65536. // +optional HostPort uint32 `json:"hostPort,omitempty"` // Protocol for port. Must be UDP, TCP, or SCTP. // +optional // +default="TCP" Protocol Protocol `json:"protocol,omitempty"` }
Port represents a network port in a single component.
func (*Port) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Port.
func (*Port) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Protocol ¶
type Protocol string
Protocol defines network protocols supported for things like component ports. +enum
type SelectorOperator ¶
type SelectorOperator string
SelectorOperator is a label selector operator is the set of operators that can be used in a selector requirement.
var ( SelectorOpIn SelectorOperator = "In" SelectorOpNotIn SelectorOperator = "NotIn" SelectorOpExists SelectorOperator = "Exists" SelectorOpDoesNotExist SelectorOperator = "DoesNotExist" )
type SelectorRequirement ¶
type SelectorRequirement struct { // The name of the scope that the selector applies to. Key string `json:"key"` // Represents a scope's relationship to a set of values. Operator SelectorOperator `json:"operator"` // An array of string values. // If the operator is In, NotIn, Intersection or NotIntersection, the values array must be non-empty. // If the operator is Exists or DoesNotExist, the values array must be empty. Values []string `json:"values,omitempty"` }
SelectorRequirement is a resource selector requirement is a selector that contains values, a key, and an operator that relates the key and values.
func (*SelectorRequirement) DeepCopy ¶
func (in *SelectorRequirement) DeepCopy() *SelectorRequirement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SelectorRequirement.
func (*SelectorRequirement) DeepCopyInto ¶
func (in *SelectorRequirement) DeepCopyInto(out *SelectorRequirement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Stage ¶
type Stage struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. // More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata metav1.ObjectMeta `json:"metadata,omitempty"` // Spec holds information about the request being evaluated. Spec StageSpec `json:"spec,omitempty"` }
Stage is an API that describes the staged change of a resource
func (*Stage) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Stage.
func (*Stage) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Stage) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type StageDelay ¶
type StageDelay struct { // DurationMilliseconds indicates the stage delay time. // If JitterDurationMilliseconds is less than DurationMilliseconds, then JitterDurationMilliseconds is used. DurationMilliseconds *int64 `json:"durationMilliseconds,omitempty"` // DurationFrom is the expression used to get the value. // If it is a time.Time type, getting the value will be minus time.Now() to get DurationMilliseconds // If it is a string type, the value get will be parsed by time.ParseDuration. DurationFrom *ExpressionFromSource `json:"durationFrom,omitempty"` // JitterDurationMilliseconds is the duration plus an additional amount chosen uniformly // at random from the interval between DurationMilliseconds and JitterDurationMilliseconds. JitterDurationMilliseconds *int64 `json:"jitterDurationMilliseconds,omitempty"` // JitterDurationFrom is the expression used to get the value. // If it is a time.Time type, getting the value will be minus time.Now() to get JitterDurationMilliseconds // If it is a string type, the value get will be parsed by time.ParseDuration. JitterDurationFrom *ExpressionFromSource `json:"jitterDurationFrom,omitempty"` }
StageDelay describes the delay time before going to next.
func (*StageDelay) DeepCopy ¶
func (in *StageDelay) DeepCopy() *StageDelay
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageDelay.
func (*StageDelay) DeepCopyInto ¶
func (in *StageDelay) DeepCopyInto(out *StageDelay)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageEvent ¶
type StageEvent struct { // Type is the type of this event (Normal, Warning), It is machine-readable. Type string `json:"type,omitempty"` // Reason is why the action was taken. It is human-readable. Reason string `json:"reason,omitempty"` // Message is a human-readable description of the status of this operation. Message string `json:"message,omitempty"` }
StageEvent describes one event in the Kubernetes.
func (*StageEvent) DeepCopy ¶
func (in *StageEvent) DeepCopy() *StageEvent
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageEvent.
func (*StageEvent) DeepCopyInto ¶
func (in *StageEvent) DeepCopyInto(out *StageEvent)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageFinalizers ¶
type StageFinalizers struct { // Add means that the Finalizers will be added to the resource. Add []FinalizerItem `json:"add,omitempty"` // Remove means that the Finalizers will be removed from the resource. Remove []FinalizerItem `json:"remove,omitempty"` // Empty means that the Finalizers for that resource will be emptied. Empty bool `json:"empty,omitempty"` }
StageFinalizers describes the modifications in the finalizers of a resource.
func (*StageFinalizers) DeepCopy ¶
func (in *StageFinalizers) DeepCopy() *StageFinalizers
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageFinalizers.
func (*StageFinalizers) DeepCopyInto ¶
func (in *StageFinalizers) DeepCopyInto(out *StageFinalizers)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageNext ¶
type StageNext struct { // Event means that an event will be sent. Event *StageEvent `json:"event,omitempty"` // Finalizers means that finalizers will be modified. Finalizers *StageFinalizers `json:"finalizers,omitempty"` // Delete means that the resource will be deleted if true. Delete bool `json:"delete,omitempty"` // StatusTemplate indicates the template for modifying the status of the resource in the next. StatusTemplate string `json:"statusTemplate,omitempty"` }
StageNext describes a stage will be moved to.
func (*StageNext) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageNext.
func (*StageNext) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageResourceRef ¶
type StageResourceRef struct { // APIGroup of the referent. // +default="v1" APIGroup string `json:"apiGroup,omitempty"` // Kind of the referent. Kind string `json:"kind"` }
StageResourceRef specifies the kind and version of the resource.
func (*StageResourceRef) DeepCopy ¶
func (in *StageResourceRef) DeepCopy() *StageResourceRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageResourceRef.
func (*StageResourceRef) DeepCopyInto ¶
func (in *StageResourceRef) DeepCopyInto(out *StageResourceRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageSelector ¶
type StageSelector struct { // MatchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels // map is equivalent to an element of matchExpressions, whose key field is ".metadata.labels[key]", the // operator is "In", and the values array contains only "value". The requirements are ANDed. MatchLabels map[string]string `json:"matchLabels,omitempty"` // MatchAnnotations is a map of {key,value} pairs. A single {key,value} in the matchAnnotations // map is equivalent to an element of matchExpressions, whose key field is ".metadata.annotations[key]", the // operator is "In", and the values array contains only "value". The requirements are ANDed. MatchAnnotations map[string]string `json:"matchAnnotations,omitempty"` // MatchExpressions is a list of label selector requirements. The requirements are ANDed. MatchExpressions []SelectorRequirement `json:"matchExpressions,omitempty"` }
StageSelector is a resource selector. the result of matchLabels and matchAnnotations and matchExpressions are ANDed. An empty resource selector matches all objects. A null resource selector matches no objects.
func (*StageSelector) DeepCopy ¶
func (in *StageSelector) DeepCopy() *StageSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageSelector.
func (*StageSelector) DeepCopyInto ¶
func (in *StageSelector) DeepCopyInto(out *StageSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type StageSpec ¶
type StageSpec struct { // ResourceRef specifies the Kind and version of the resource. ResourceRef StageResourceRef `json:"resourceRef"` // Selector specifies the stags will be applied to the selected resource. Selector *StageSelector `json:"selector,omitempty"` // Weight means the current stage, in case of multiple stages, // a random stage will be matched as the next stage based on the weight. // +default=0 Weight int `json:"weight,omitempty"` // Delay means there is a delay in this stage. Delay *StageDelay `json:"delay,omitempty"` // Next indicates that this stage will be moved to. Next StageNext `json:"next"` }
StageSpec defines the specification for Stage.
func (*StageSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new StageSpec.
func (*StageSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Volume ¶
type Volume struct { // Name of the volume specified. // +optional Name string `json:"name,omitempty"` // Mounted read-only if true, read-write otherwise. // +optional ReadOnly *bool `json:"readOnly,omitempty"` // HostPath represents a pre-existing file or directory on the host machine that is directly exposed to the container. HostPath string `json:"hostPath,omitempty"` // MountPath within the container at which the volume should be mounted. MountPath string `json:"mountPath,omitempty"` }
func (*Volume) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.