API reference

API reference

Packages:

action.kwok.x-k8s.io/v1alpha1 #

Package v1alpha1 implements the v1alpha1 apiVersion of kwokctl’s action

Resource Types:

ResourcePatch #

ResourcePatch provides resource definition for kwokctl. this is a action of resource patch.

FieldDescription
apiVersion stringaction.kwok.x-k8s.io/v1alpha1
kind stringResourcePatch
resource GroupVersionResource

Resource represents the resource to be patched.

target Target

Target represents the target of the ResourcePatch.

durationNanosecond time.Duration

DurationNanosecond represents the duration of the patch in nanoseconds.

method PatchMethod

Method represents the method of the patch.

template encoding/json.RawMessage

Template contains the patch data as a raw JSON message.

config.kwok.x-k8s.io/v1alpha1 #

Package v1alpha1 implements the v1alpha1 apiVersion of kwok’s configuration

Resource Types:

KwokConfiguration #

KwokConfiguration provides configuration for the Kwok.

FieldDescription
apiVersion stringconfig.kwok.x-k8s.io/v1alpha1
kind stringKwokConfiguration
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
options KwokConfigurationOptions

Options holds information about the default value.

tracing TracingConfiguration

Tracing holds tracing configuration.

KwokctlConfiguration #

KwokctlConfiguration provides configuration for the Kwokctl.

FieldDescription
apiVersion stringconfig.kwok.x-k8s.io/v1alpha1
kind stringKwokctlConfiguration
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
options KwokctlConfigurationOptions

Options holds information about the default value.

components []Component

Components holds information about the components.

componentsPatches []ComponentPatches

ComponentsPatches holds information about the components patches.

status KwokctlConfigurationStatus

Status holds information about the status.

KwokctlResource #

KwokctlResource provides resource definition for kwokctl.

FieldDescription
apiVersion stringconfig.kwok.x-k8s.io/v1alpha1
kind stringKwokctlResource
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
parameters encoding/json.RawMessage

Parameters is the parameters for the kwokctl resource configuration.

template string

Template is the template for the kwokctl resource configuration.

kwok.x-k8s.io/v1alpha1 #

Package v1alpha1 implements the v1alpha1 apiVersion of kwok’s configuration

Resource Types:

Attach #

Attach provides attach configuration for a single pod.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringAttach
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec AttachSpec

Spec holds spec for attach

attaches []AttachConfig

Attaches is a list of attaches to configure.

status AttachStatus

Status holds status for attach

ClusterAttach #

ClusterAttach provides cluster-wide logging configuration

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringClusterAttach
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ClusterAttachSpec

Spec holds spec for cluster attach.

selector ObjectSelector

Selector is a selector to filter pods to configure.

attaches []AttachConfig

Attaches is a list of attach configurations.

status ClusterAttachStatus

Status holds status for cluster attach

ClusterExec #

ClusterExec provides cluster-wide exec configuration.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringClusterExec
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ClusterExecSpec

Spec holds spec for cluster exec.

selector ObjectSelector

Selector is a selector to filter pods to configure.

execs []ExecTarget

Execs is a list of exec to configure.

status ClusterExecStatus

Status holds status for cluster exec

ClusterLogs #

ClusterLogs provides cluster-wide logging configuration

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringClusterLogs
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ClusterLogsSpec

Spec holds spec for cluster logs.

selector ObjectSelector

Selector is a selector to filter pods to configure.

logs []Log

Forwards is a list of log configurations.

status ClusterLogsStatus

Status holds status for cluster logs

ClusterPortForward #

ClusterPortForward provides cluster-wide port forward configuration.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringClusterPortForward
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ClusterPortForwardSpec

Spec holds spec for cluster port forward.

selector ObjectSelector

Selector is a selector to filter pods to configure.

forwards []Forward

Forwards is a list of forwards to configure.

status ClusterPortForwardStatus

Status holds status for cluster port forward

ClusterResourceUsage #

ClusterResourceUsage provides cluster-wide resource usage.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringClusterResourceUsage
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ClusterResourceUsageSpec

Spec holds spec for cluster resource usage.

selector ObjectSelector

Selector is a selector to filter pods to configure.

usages []ResourceUsageContainer

Usages is a list of resource usage for the pod.

status ClusterResourceUsageStatus

Status holds status for cluster resource usage

Exec #

Exec provides exec configuration for a single pod.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringExec
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ExecSpec

Spec holds spec for exec

execs []ExecTarget

Execs is a list of execs to configure.

status ExecStatus

Status holds status for exec

Logs #

Logs provides logging configuration for a single pod.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringLogs
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec LogsSpec

Spec holds spec for logs

logs []Log

Logs is a list of logs to configure.

status LogsStatus

Status holds status for logs

Metric #

Metric provides metrics configuration.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringMetric
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec MetricSpec

Spec holds spec for metrics.

path string

Path is a restful service path.

metrics []MetricConfig

Metrics is a list of metric configurations.

status MetricStatus

Status holds status for metrics

PortForward #

PortForward provides port forward configuration for a single pod.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringPortForward
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec PortForwardSpec

Spec holds spec for port forward.

forwards []Forward

Forwards is a list of forwards to configure.

status PortForwardStatus

Status holds status for port forward

ResourceUsage #

ResourceUsage provides resource usage for a single pod.

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringResourceUsage
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec ResourceUsageSpec

Spec holds spec for resource usage.

usages []ResourceUsageContainer

Usages is a list of resource usage for the pod.

status ResourceUsageStatus

Status holds status for resource usage

Stage #

Stage is an API that describes the staged change of a resource

FieldDescription
apiVersion stringkwok.x-k8s.io/v1alpha1
kind stringStage
metadata Kubernetes meta/v1.ObjectMeta

Standard list metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Refer to the Kubernetes API documentation for the fields of the metadata field.
spec StageSpec

Spec holds information about the request being evaluated.

resourceRef StageResourceRef

ResourceRef specifies the Kind and version of the resource.

selector StageSelector

Selector specifies the stags will be applied to the selected resource.

weight int

Weight means when multiple stages share the same ResourceRef and Selector, a random stage will be matched as the next stage based on the weight.

weightFrom ExpressionFromSource

WeightFrom means is the expression used to get the value. If it is a number type, convert to int. If it is a string type, the value get will be parsed by strconv.ParseInt.

delay StageDelay

Delay means there is a delay in this stage.

next StageNext

Next indicates that this stage will be moved to.

immediateNextStage bool

ImmediateNextStage means that the next stage of matching is performed immediately, without waiting for the Apiserver to push.

status StageStatus

Status holds status for the Stage

References #

GroupVersionResource #

Appears on: ResourcePatch

GroupVersionResource is a struct that represents the group version resource.

FieldDescription
group string

Group represents the group of the resource.

version string

Version represents the version of the resource.

resource string

Resource represents the type of the resource.

PatchMethod (string alias) #

Appears on: ResourcePatch

ValueDescription
"create"

PatchMethodCreate means that the resource will be created by create.

"delete"

PatchMethodDelete means that the resource will be deleted by delete.

"patch"

PatchMethodPatch means that the resource will be patched by patch.

Target #

Appears on: ResourcePatch

Target is a struct that represents the target of the ResourcePatch.

FieldDescription
name string

Name represents the name of the resource to be patched.

namespace string

Namespace represents the namespace of the resource to be patched.

Component #

Appears on: KwokctlConfiguration

Component is a component of the cluster.

FieldDescription
name string

Name of the component specified as a DNS_LABEL. Each component must have a unique name (DNS_LABEL). Cannot be updated.

links []string(Optional)

Links is a set of links for the component.

binary string(Optional)

Binary is the binary of the component.

image string(Optional)

Image is the image of the component.

command []string(Optional)

Command is Entrypoint array. Not executed within a shell. Only works with Image.

user string(Optional)

User is the user for the component.

args []string(Optional)

Args is Arguments to the entrypoint.

workDir string(Optional)

WorkDir is component’s working directory.

ports []Port(Optional)

Ports is list of ports to expose from the component.

envs []Env(Optional)

Envs is list of environment variables to set in the component.

volumes []Volume(Optional)

Volumes is a list of named volumes that can be mounted by containers belonging to the component.

metric ComponentMetric

Metric is the metric of the component.

metricsDiscovery ComponentMetric

MetricsDiscovery is the metrics discovery of the component.

version string(Optional)

Version is the version of the component.

ComponentMetric #

Appears on: Component

ComponentMetric represents a metric of a component.

FieldDescription
scheme string

Scheme is the scheme of the metric.

host string

Host is the host of the metric.

path string

Path is the path of the metric.

certPath string

CertPath is the cert path of the metric.

keyPath string

KeyPath is the key path of the metric.

insecureSkipVerify bool

InsecureSkipVerify is the flag to skip verify the metric.

ComponentPatches #

Appears on: KwokctlConfiguration

ComponentPatches holds information about the component patches.

FieldDescription
name string

Name is the name of the component.

extraArgs []ExtraArgs

ExtraArgs is the extra args to be patched on the component.

extraVolumes []Volume

ExtraVolumes is the extra volumes to be patched on the component.

extraEnvs []Env

ExtraEnvs is the extra environment variables to be patched on the component.

Env #

Appears on: Component , ComponentPatches

Env represents an environment variable present in a Container.

FieldDescription
name string

Name of the environment variable.

value string(Optional)

Value is using the previously defined environment variables in the component.

ExtraArgs #

Appears on: ComponentPatches

ExtraArgs holds information about the extra args.

FieldDescription
key string

Key is the key of the extra args.

value string

Value is the value of the extra args.

override bool

Override is the value of is it override the arg

HostPathType (string alias) #

Appears on: Volume

HostPathType represents the type of storage used for HostPath volumes.

ValueDescription
"BlockDevice"

A block device must exist at the given path

"CharDevice"

A character device must exist at the given path

"Directory"

A directory must exist at the given path

"DirectoryOrCreate"

If nothing exists at the given path, an empty directory will be created there as needed with file mode 0755, having the same group and ownership with Kubelet.

"File"

A file must exist at the given path

"FileOrCreate"

If nothing exists at the given path, an empty file will be created there as needed with file mode 0644, having the same group and ownership with Kubelet.

"Socket"

A UNIX socket must exist at the given path

""

For backwards compatible, leave it empty if unset

KwokConfigurationOptions #

Appears on: KwokConfiguration

KwokConfigurationOptions holds information about the options.

FieldDescription
enableCRDs []string

EnableCRDs is a list of CRDs to enable. Once listed in this field, it will no longer be supported by the –config flag.

cidr string

The default IP assigned to the Pod on maintained Nodes. is the default value for flag –cidr

nodeIP string

The ip of all nodes maintained by the Kwok is the default value for flag –node-ip

nodeName string

The name of all nodes maintained by the Kwok is the default value for flag –node-name

nodePort int

The port of all nodes maintained by the Kwok is the default value for flag –node-port

tlsCertFile string

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

tlsPrivateKeyFile string

TLSPrivateKeyFile is the ile containing x509 private key matching –tls-cert-file. is the default value for flag –tls-private-key-file

manageSingleNode string

ManageSingleNode is the option to manage a single node name. is the default value for flag –manage-single-node Note: when manage-all-nodes is specified as true or manage-nodes-with-label-selector or manage-nodes-with-annotation-selector is specified, this is a no-op.

manageAllNodes bool

Default option to manage (i.e., maintain heartbeat/liveness of) all Nodes or not. is the default value for flag –manage-all-nodes Note: when manage-single-node is specified as true or manage-nodes-with-label-selector or manage-nodes-with-annotation-selector is specified, this is a no-op.

manageNodesWithAnnotationSelector string

Default annotations specified on Nodes to demand manage. is the default value for flag –manage-nodes-with-annotation-selector Note: when all-node-manage is specified as true or manage-single-node is specified, this is a no-op.

manageNodesWithLabelSelector string

Default labels specified on Nodes to demand manage. is the default value for flag –manage-nodes-with-label-selector Note: when all-node-manage is specified as true or manage-single-node is specified, this is a no-op.

disregardStatusWithAnnotationSelector string

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 Deprecated: use Stage API instead

disregardStatusWithLabelSelector string

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 Deprecated: use Stage API instead

serverAddress string

ServerAddress is server address of the Kwok. is the default value for flag –server-address

experimentalEnableCNI bool

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 Deprecated: It will be removed and will be supported in the form of plugins

enableDebuggingHandlers bool

enableDebuggingHandlers enables server endpoints for log collection and local running of containers and commands

enableContentionProfiling bool

enableContentionProfiling enables lock contention profiling, if enableDebuggingHandlers is true.

enableProfilingHandler bool

EnableProfiling enables /debug/pprof handler, if enableDebuggingHandlers is true.

podPlayStageParallelism uint

PodPlayStageParallelism is the number of PodPlayStages that are allowed to run in parallel.

nodePlayStageParallelism uint

NodePlayStageParallelism is the number of NodePlayStages that are allowed to run in parallel.

nodeLeaseDurationSeconds uint

NodeLeaseDurationSeconds is the duration the Kubelet will set on its corresponding Lease.

nodeLeaseParallelism uint

NodeLeaseParallelism is the number of NodeLeases that are allowed to be processed in parallel.

KwokctlConfigurationOptions #

Appears on: KwokctlConfiguration

KwokctlConfigurationOptions holds information about the options.

FieldDescription
enableCRDs []string

EnableCRDs is a list of CRDs to enable. Once listed in this field, it will no longer be supported by the –config flag.

kubeApiserverPort uint32

KubeApiserverPort is the port to expose apiserver. is the default value for flag –kube-apiserver-port and env KWOK_KUBE_APISERVER_PORT

kubeApiserverInsecurePort uint32

KubeApiserverInsecurePort is the port to expose insecure apiserver. is the default value for flag –kube-apiserver-insecure-port and env KWOK_KUBE_APISERVER_INSECURE_PORT

insecureKubeconfig bool

InsecureKubeconfig is the flag to use insecure kubeconfig. only available when KubeApiserverInsecurePort is set.

runtime string

Runtime is the runtime to use. is the default value for flag –runtime and env KWOK_RUNTIME

runtimes []string

Runtimes is a list of alternate runtimes. When Runtime is empty, the availability of the runtimes in the list is checked one by one and set to Runtime

prometheusPort uint32

PrometheusPort is the port to expose Prometheus metrics. is the default value for flag –prometheus-port and env KWOK_PROMETHEUS_PORT

jaegerPort uint32

JaegerPort is the port to expose Jaeger UI. is the default value for flag –jaeger-port and env KWOK_JAEGER_PORT

jaegerOtlpGrpcPort uint32

JaegerOtlpGrpcPort is the port to expose OTLP GRPC collector.

kwokVersion string

KwokVersion is the version of Kwok to use. is the default value for env KWOK_VERSION

kubeVersion string

KubeVersion is the version of Kubernetes to use. is the default value for env KWOK_KUBE_VERSION

etcdVersion string

EtcdVersion is the version of Etcd to use. is the default value for env KWOK_ETCD_VERSION

dashboardVersion string

DashboardVersion is the version of Kubernetes dashboard to use.

dashboardMetricsScraperVersion string

DashboardMetricsScraperVersion is the version of Kubernetes dashboard metrics scraper to use.

prometheusVersion string

PrometheusVersion is the version of Prometheus to use. is the default value for env KWOK_PROMETHEUS_VERSION

jaegerVersion string

JaegerVersion is the version of Jaeger to use. is the default value for env KWOK_JAEGER_VERSION

metricsServerVersion string

MetricsServerVersion is the version of metrics-server to use.

kindVersion string

KindVersion is the version of kind to use. is the default value for env KWOK_KIND_VERSION

securePort bool

SecurePort is the apiserver port on which to serve HTTPS with authentication and authorization. is not available before Kubernetes 1.13.0 is the default value for flag –secure-port and env KWOK_SECURE_PORT

quietPull bool

QuietPull is the flag to quiet the pull. is the default value for flag –quiet-pull and env KWOK_QUIET_PULL

kubeSchedulerConfig string

KubeSchedulerConfig is the configuration path for kube-scheduler. is the default value for flag –kube-scheduler-config and env KWOK_KUBE_SCHEDULER_CONFIG

components []string

Components is the configuration for components.

disable []string

Disable is the configuration for disables components.

enable []string

Enable is the configuration for enables components.

disableKubeScheduler bool

DisableKubeScheduler is the flag to disable kube-scheduler. is the default value for flag –disable-kube-scheduler and env KWOK_DISABLE_KUBE_SCHEDULER Deprecated: Use Disable instead

disableKubeControllerManager bool

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 Deprecated: Use Disable instead

enableMetricsServer bool

EnableMetricsServer is the flag to enable metrics-server. Deprecated: Use Enable instead

kubeImagePrefix string

KubeImagePrefix is the prefix of the kubernetes image. is the default value for env KWOK_KUBE_IMAGE_PREFIX

etcdImagePrefix string

EtcdImagePrefix is the prefix of the etcd image. is the default value for env KWOK_ETCD_IMAGE_PREFIX

kwokImagePrefix string

KwokImagePrefix is the prefix of the kwok image. is the default value for env KWOK_IMAGE_PREFIX

dashboardImagePrefix string

DashboardImagePrefix is the prefix of the dashboard image.

prometheusImagePrefix string

PrometheusImagePrefix is the prefix of the Prometheus image. is the default value for env KWOK_PROMETHEUS_IMAGE_PREFIX

jaegerImagePrefix string

JaegerImagePrefix is the prefix of the Jaeger image. is the default value for env KWOK_JAEGER_IMAGE_PREFIX

metricsServerImagePrefix string

MetricsServerImagePrefix is the prefix of the metrics-server image.

etcdImage string

EtcdImage is the image of etcd. is the default value for flag –etcd-image and env KWOK_ETCD_IMAGE

kubeApiserverImage string

KubeApiserverImage is the image of kube-apiserver. is the default value for flag –kube-apiserver-image and env KWOK_KUBE_APISERVER_IMAGE

kubeControllerManagerImage string

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

kubeSchedulerImage string

KubeSchedulerImage is the image of kube-scheduler. is the default value for flag –kube-scheduler-image and env KWOK_KUBE_SCHEDULER_IMAGE

kubectlImage string

KubectlImage is the image of kubectl. is the default value for flag –kubectl-image and env KWOK_KUBECTL_IMAGE

kwokControllerImage string

KwokControllerImage is the image of Kwok. is the default value for flag –controller-image and env KWOK_CONTROLLER_IMAGE

dashboardImage string

DashboardImage is the image of dashboard.

dashboardMetricsScraperImage string

DashboardMetricsScraperImage is the image of dashboard metrics scraper.

prometheusImage string

PrometheusImage is the image of Prometheus. is the default value for flag –prometheus-image and env KWOK_PROMETHEUS_IMAGE

jaegerImage string

JaegerImage is the image of Jaeger. is the default value for flag –jaeger-image and env KWOK_JAEGER_IMAGE

metricsServerImage string

MetricsServerImage is the image of metrics-server.

kindNodeImagePrefix string

KindNodeImagePrefix is the prefix of the kind node image. is the default value for env KWOK_KIND_NODE_IMAGE_PREFIX

kindNodeImage string

KindNodeImage is the image of kind node. is the default value for flag –kind-node-image and env KWOK_KIND_NODE_IMAGE

binSuffix string

BinSuffix is the suffix of the all binary. On Windows is .exe

kubeBinaryPrefix string

KubeBinaryPrefix is the prefix of the kubernetes binary. is the default value for env KWOK_KUBE_BINARY_PREFIX

kubeApiserverBinary string

KubeApiserverBinary is the binary of kube-apiserver. is the default value for flag –apiserver-binary and env KWOK_KUBE_APISERVER_BINARY

kubeControllerManagerBinary string

KubeControllerManagerBinary is the binary of kube-controller-manager. is the default value for flag –controller-manager-binary and env KWOK_KUBE_CONTROLLER_MANAGER_BINARY

kubeSchedulerBinary string

KubeSchedulerBinary is the binary of kube-scheduler. is the default value for flag –scheduler-binary and env KWOK_KUBE_SCHEDULER_BINARY

kubectlBinary string

KubectlBinary is the binary of kubectl. is the default value for env KWOK_KUBECTL_BINARY

etcdBinaryPrefix string

EtcdBinaryPrefix is the prefix of the etcd binary. is the default value for env KWOK_ETCD_BINARY_PREFIX

etcdctlBinary string

EtcdctlBinary is the binary of etcdctl.

etcdBinary string

EtcdBinary is the binary of etcd. is the default value for flag –etcd-binary and env KWOK_ETCD_BINARY

etcdBinaryTar string

EtcdBinaryTar is the tar of the binary of etcd. is the default value for env KWOK_ETCD_BINARY_TAR Deprecated: Use EtcdBinary or EtcdctlBinary instead

etcdPrefix string

EtcdPrefix is the prefix of etcd.

kwokBinaryPrefix string

KwokBinaryPrefix is the prefix of the kwok binary. is the default value for env KWOK_BINARY_PREFIX

kwokControllerBinary string

KwokControllerBinary is the binary of kwok. is the default value for flag –controller-binary and env KWOK_CONTROLLER_BINARY

prometheusBinaryPrefix string

PrometheusBinaryPrefix is the prefix of the Prometheus binary. is the default value for env KWOK_PROMETHEUS_PREFIX

prometheusBinary string

PrometheusBinary is the binary of Prometheus. is the default value for flag –prometheus-binary and env KWOK_PROMETHEUS_BINARY

prometheusBinaryTar string

PrometheusBinaryTar is the tar of binary of Prometheus. is the default value for env KWOK_PROMETHEUS_BINARY_TAR Deprecated: Use PrometheusBinary instead

jaegerBinaryPrefix string

JaegerBinaryPrefix is the prefix of the Jaeger binary. is the default value for env KWOK_JAEGER_PREFIX

jaegerBinary string

JaegerBinary is the binary of Jaeger. is the default value for flag –jaeger-binary and env KWOK_JAEGER_BINARY

jaegerBinaryTar string

JaegerBinaryTar is the tar of binary of Jaeger. is the default value for env KWOK_JAEGER_TAR Deprecated: Use JaegerBinary instead

metricsServerBinaryPrefix string

MetricsServerBinaryPrefix is the prefix of the metrics-server binary.

metricsServerBinary string

MetricsServerBinary is the binary of metrics-server.

kindBinaryPrefix string

KindBinaryPrefix is the binary prefix of kind. is the default value for env KWOK_KIND_BINARY_PREFIX

kindBinary string

KindBinary is the binary of kind. is the default value for flag –kind-binary and env KWOK_KIND_BINARY

mode string

Mode is several default parameter templates for clusters is the default value for env KWOK_MODE k8s 1.29, different components use different FeatureGate, which makes it impossible to create clusters properly using this feature. Deprecated: This mode will be removed in a future release

kubeFeatureGates string

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

kubeRuntimeConfig string

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

kubeAuditPolicy string

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

kubeAuthorization bool

KubeAuthorization is the flag to enable authorization on secure port. is the default value for flag –kube-authorization and env KWOK_KUBE_AUTHORIZATION

kubeAdmission bool

KubeAdmission is the flag to enable admission for kube-apiserver. is the default value for flag –kube-admission and env KWOK_KUBE_ADMISSION

etcdPeerPort uint32

EtcdPeerPort is etcd peer port in the binary runtime

etcdPort uint32

EtcdPort is etcd port in the binary runtime

kubeControllerManagerPort uint32

KubeControllerManagerPort is kube-controller-manager port in the binary runtime

kubeSchedulerPort uint32

KubeSchedulerPort is kube-scheduler port in the binary runtime

dashboardPort uint32

DashboardPort is dashboard port in the binary runtime

kwokControllerPort uint32

KwokControllerPort is kwok-controller port that is exposed to the host. is the default value for flag –controller-port and env KWOK_CONTROLLER_PORT

metricsServerPort uint32

MetricsServerPort is metrics-server port that is exposed to the host.

cacheDir string

CacheDir is the directory of the cache.

kubeControllerManagerNodeMonitorPeriodMilliseconds int64

KubeControllerManagerNodeMonitorPeriodMilliseconds is –node-monitor-period for kube-controller-manager.

kubeControllerManagerNodeMonitorGracePeriodMilliseconds int64

KubeControllerManagerNodeMonitorGracePeriodMilliseconds is –node-monitor-grace-period for kube-controller-manager.

nodeStatusUpdateFrequencyMilliseconds int64

NodeStatusUpdateFrequencyMilliseconds is –node-status-update-frequency for kwok like kubelet.

nodeLeaseDurationSeconds uint

NodeLeaseDurationSeconds is the duration the Kubelet will set on its corresponding Lease.

heartbeatFactor float64

HeartbeatFactor is the scale factor for all about heartbeat.

bindAddress string

BindAddress is the address to bind to.

kubeApiserverCertSANs []string

KubeApiserverCertSANs sets extra Subject Alternative Names for the API Server signing cert.

disableQPSLimits bool

DisableQPSLimits specifies whether to disable QPS limits for components.

etcdQuotaBackendSize string

EtcdQuotaBackendSize is the backend quota for etcd.

KwokctlConfigurationStatus #

Appears on: KwokctlConfiguration

KwokctlConfigurationStatus holds information about the status.

FieldDescription
version string

Version is the version of the kwokctl.

Port #

Appears on: Component

Port represents a network port in a single component.

FieldDescription
name string(Optional)

Name for the port that can be referred to by components.

port uint32

Port is number of port to expose on the component’s IP address. This must be a valid port number, 0 < x < 65536.

hostPort uint32(Optional)

HostPort is number of port to expose on the host. If specified, this must be a valid port number, 0 < x < 65536.

protocol Protocol(Optional)

Protocol for port. Must be UDP, TCP, or SCTP.

Protocol (string alias) #

Appears on: Port

Protocol defines network protocols supported for things like component ports.

ValueDescription
"SCTP"

ProtocolSCTP is the SCTP protocol.

"TCP"

ProtocolTCP is the TCP protocol.

"UDP"

ProtocolUDP is the UDP protocol.

TracingConfiguration #

Appears on: KwokConfiguration

TracingConfiguration provides versioned configuration for OpenTelemetry tracing clients.

FieldDescription
endpoint string(Optional)

Endpoint of the collector this component will report traces to. The connection is insecure, and does not currently support TLS. Recommended is unset, and endpoint is the otlp grpc default, localhost:4317.

samplingRatePerMillion int32(Optional)

SamplingRatePerMillion is the number of samples to collect per million spans. Recommended is unset. If unset, sampler respects its parent span’s sampling rate, but otherwise never samples.

Volume #

Appears on: Component , ComponentPatches

Volume represents a volume that is accessible to the containers running in a component.

FieldDescription
name string(Optional)

Name of the volume specified.

readOnly bool(Optional)

Mounted read-only if true, read-write otherwise.

hostPath string

HostPath represents a pre-existing file or directory on the host machine that is directly exposed to the container.

mountPath string

MountPath within the container at which the volume should be mounted.

pathType HostPathType

PathType is the type of the HostPath.

AttachConfig #

Appears on: AttachSpec , ClusterAttachSpec

AttachConfig holds information how to attach.

FieldDescription
containers []string

Containers is list of container names.

logsFile string

LogsFile is the file from which the attach starts

AttachSpec #

Appears on: Attach

AttachSpec holds spec for attach.

FieldDescription
attaches []AttachConfig

Attaches is a list of attaches to configure.

AttachStatus #

Appears on: Attach

AttachStatus holds status for attach

FieldDescription
conditions []Condition

Conditions holds conditions for attach

ClusterAttachSpec #

Appears on: ClusterAttach

ClusterAttachSpec holds spec for cluster attach.

FieldDescription
selector ObjectSelector

Selector is a selector to filter pods to configure.

attaches []AttachConfig

Attaches is a list of attach configurations.

ClusterAttachStatus #

Appears on: ClusterAttach

ClusterAttachStatus holds status for cluster attach

FieldDescription
conditions []Condition

Conditions holds conditions for cluster attach.

ClusterExecSpec #

Appears on: ClusterExec

ClusterExecSpec holds spec for cluster exec.

FieldDescription
selector ObjectSelector

Selector is a selector to filter pods to configure.

execs []ExecTarget

Execs is a list of exec to configure.

ClusterExecStatus #

Appears on: ClusterExec

ClusterExecStatus holds status for cluster exec

FieldDescription
conditions []Condition

Conditions holds conditions for cluster exec.

ClusterLogsSpec #

Appears on: ClusterLogs

ClusterLogsSpec holds spec for cluster logs.

FieldDescription
selector ObjectSelector

Selector is a selector to filter pods to configure.

logs []Log

Forwards is a list of log configurations.

ClusterLogsStatus #

Appears on: ClusterLogs

ClusterLogsStatus holds status for cluster logs

FieldDescription
conditions []Condition

Conditions holds conditions for cluster logs.

ClusterPortForwardSpec #

Appears on: ClusterPortForward

ClusterPortForwardSpec holds spec for cluster port forward.

FieldDescription
selector ObjectSelector

Selector is a selector to filter pods to configure.

forwards []Forward

Forwards is a list of forwards to configure.

ClusterPortForwardStatus #

Appears on: ClusterPortForward

ClusterPortForwardStatus holds status for cluster port forward

FieldDescription
conditions []Condition

Conditions holds conditions for cluster port forward.

ClusterResourceUsageSpec #

Appears on: ClusterResourceUsage

ClusterResourceUsageSpec holds spec for cluster resource usage.

FieldDescription
selector ObjectSelector

Selector is a selector to filter pods to configure.

usages []ResourceUsageContainer

Usages is a list of resource usage for the pod.

ClusterResourceUsageStatus #

Appears on: ClusterResourceUsage

ClusterResourceUsageStatus holds status for cluster resource usage

FieldDescription
conditions []Condition

Conditions holds conditions for cluster resource usage

Condition #

Appears on: AttachStatus , ClusterAttachStatus , ClusterExecStatus , ClusterLogsStatus , ClusterPortForwardStatus , ClusterResourceUsageStatus , ExecStatus , LogsStatus , MetricStatus , PortForwardStatus , ResourceUsageStatus , StageStatus

Condition contains details for one aspect of the current state of this API Resource.

FieldDescription
type string

Type of condition in CamelCase or in foo.example.com/CamelCase. Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be useful (see .node.status.conditions), the ability to deconflict is important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)

status ConditionStatus

Status of the condition

lastTransitionTime Kubernetes meta/v1.Time

LastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.

reason string

Reason contains a programmatic identifier indicating the reason for the condition’s last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.

message string

Message is a human readable message indicating details about the transition. This may be an empty string.

ConditionStatus (string alias) #

Appears on: Condition

ConditionStatus is the status of a condition.

ValueDescription
"False"

ConditionFalse means a resource is not in the condition.

"True"

ConditionTrue means a resource is in the condition.

"Unknown"

ConditionUnknown means kubernetes can’t decide if a resource is in the condition or not.

Dimension (string alias) #

Appears on: MetricConfig

Dimension is a dimension of the metric.

ValueDescription
"container"

DimensionContainer is a container dimension.

"node"

DimensionNode is a node dimension.

"pod"

DimensionPod is a pod dimension.

EnvVar #

Appears on: ExecTargetLocal

EnvVar represents an environment variable present in a Container.

FieldDescription
name string

Name of the environment variable.

value string

Value of the environment variable.

ExecSpec #

Appears on: Exec

ExecSpec holds spec for exec

FieldDescription
execs []ExecTarget

Execs is a list of execs to configure.

ExecStatus #

Appears on: Exec

ExecStatus holds status for exec

FieldDescription
conditions []Condition

Conditions holds conditions for exec

ExecTarget #

Appears on: ClusterExecSpec , ExecSpec

ExecTarget holds information how to exec.

FieldDescription
containers []string

Containers is a list of containers to exec. if not set, all containers will be execed.

local ExecTargetLocal

Local holds information how to exec to a local target.

ExecTargetLocal #

Appears on: ExecTarget

ExecTargetLocal holds information how to exec to a local target.

FieldDescription
workDir string

WorkDir is the working directory to exec with.

envs []EnvVar

Envs is a list of environment variables to exec with.

securityContext SecurityContext

SecurityContext is the user context to exec.

ExpressionFromSource #

Appears on: StageDelay , StageSpec

ExpressionFromSource represents a source for the value of a from.

FieldDescription
expressionFrom string

ExpressionFrom is the expression used to get the value.

FinalizerItem #

Appears on: StageFinalizers

FinalizerItem describes the one of the finalizers.

FieldDescription
value string

Value is the value of the finalizer.

Forward #

Appears on: ClusterPortForwardSpec , PortForwardSpec

Forward holds information how to forward based on ports.

FieldDescription
ports []int32

Ports is a list of ports to forward. if not set, all ports will be forwarded.

target ForwardTarget

Target is the target to forward to.

command []string

Command is the command to run to forward with stdin/stdout. if set, Target will be ignored.

ForwardTarget #

Appears on: Forward

ForwardTarget holds information how to forward to a target.

FieldDescription
port int32

Port is the port to forward to.

address string

Address is the address to forward to.

ImpersonationConfig #

Appears on: StageNext , StagePatch

ImpersonationConfig describes the configuration for impersonating clients

FieldDescription
username string

Username the target username for the client to impersonate

Kind (string alias) #

Appears on: MetricConfig

Kind is kind of metric configuration.

ValueDescription
"counter"

KindCounter is a counter metric.

"gauge"

KindGauge is a gauge metric.

"histogram"

KindHistogram is a histogram metric.

Log #

Appears on: ClusterLogsSpec , LogsSpec

Log holds information how to forward logs.

FieldDescription
containers []string

Containers is list of container names.

logsFile string

LogsFile is the file from which the log forward starts

follow bool

Follow up if true

LogsSpec #

Appears on: Logs

LogsSpec holds spec for logs.

FieldDescription
logs []Log

Logs is a list of logs to configure.

LogsStatus #

Appears on: Logs

LogsStatus holds status for logs

FieldDescription
conditions []Condition

Conditions holds conditions for logs

MetricBucket #

Appears on: MetricConfig

MetricBucket is a single bucket for a metric.

FieldDescription
le float64

Le is less-than or equal.

value string

Value is a CEL expression.

hidden bool

Hidden is means that this bucket not shown in the metric. but value will be calculated and cumulative into the next bucket.

MetricConfig #

Appears on: MetricSpec

MetricConfig provides metric configuration to a single metric

FieldDescription
name string

Name is the fully-qualified name of the metric.

help string

Help provides information about this metric.

kind Kind

Kind is kind of metric

labels []MetricLabel

Labels are metric labels.

value string

Value is a CEL expression.

buckets []MetricBucket

Buckets is a list of buckets for a histogram metric.

dimension Dimension

Dimension is a dimension of the metric.

MetricLabel #

Appears on: MetricConfig

MetricLabel holds label name and the value of the label.

FieldDescription
name string

Name is a label name.

value string

Value is a CEL expression.

MetricSpec #

Appears on: Metric

MetricSpec holds spec for metrics.

FieldDescription
path string

Path is a restful service path.

metrics []MetricConfig

Metrics is a list of metric configurations.

MetricStatus #

Appears on: Metric

MetricStatus holds status for metrics

FieldDescription
conditions []Condition

Conditions holds conditions for metrics.

ObjectSelector #

Appears on: ClusterAttachSpec , ClusterExecSpec , ClusterLogsSpec , ClusterPortForwardSpec , ClusterResourceUsageSpec

ObjectSelector holds information how to match based on namespace and name.

FieldDescription
matchNamespaces []string

MatchNamespaces is a list of namespaces to match. if not set, all namespaces will be matched.

matchNames []string

MatchNames is a list of names to match. if not set, all names will be matched.

PortForwardSpec #

Appears on: PortForward

PortForwardSpec holds spec for port forward.

FieldDescription
forwards []Forward

Forwards is a list of forwards to configure.

PortForwardStatus #

Appears on: PortForward

PortForwardStatus holds status for port forward

FieldDescription
conditions []Condition

Conditions holds conditions for port forward

ResourceUsageContainer #

Appears on: ClusterResourceUsageSpec , ResourceUsageSpec

ResourceUsageContainer holds spec for resource usage container.

FieldDescription
containers []string

Containers is list of container names.

usage map[string]sigs.k8s.io/kwok/pkg/apis/v1alpha1.ResourceUsageValue

Usage is a list of resource usage for the container.

ResourceUsageSpec #

Appears on: ResourceUsage

ResourceUsageSpec holds spec for resource usage.

FieldDescription
usages []ResourceUsageContainer

Usages is a list of resource usage for the pod.

ResourceUsageStatus #

Appears on: ResourceUsage

ResourceUsageStatus holds status for resource usage

FieldDescription
conditions []Condition

Conditions holds conditions for resource usage

ResourceUsageValue #

Appears on: ResourceUsageContainer

ResourceUsageValue holds value for resource usage.

FieldDescription
value k8s.io/apimachinery/pkg/api/resource.Quantity

Value is the value for resource usage.

expression string

Expression is the expression for resource usage.

SecurityContext #

Appears on: ExecTargetLocal

SecurityContext specifies the existing uid and gid to run exec command in container process.

FieldDescription
runAsUser int64

RunAsUser is the existing uid to run exec command in container process.

runAsGroup int64

RunAsGroup is the existing gid to run exec command in container process.

SelectorOperator (string alias) #

Appears on: SelectorRequirement

SelectorOperator is a label selector operator is the set of operators that can be used in a selector requirement.

ValueDescription
"DoesNotExist"

SelectorOpDoesNotExist is the negated existence operator.

"Exists"

SelectorOpExists is the existence operator.

"In"

SelectorOpIn is the set inclusion operator.

"NotIn"

SelectorOpNotIn is the negated set inclusion operator.

SelectorRequirement #

Appears on: StageSelector

SelectorRequirement is a resource selector requirement is a selector that contains values, a key, and an operator that relates the key and values.

FieldDescription
key string

The name of the scope that the selector applies to.

operator SelectorOperator

Represents a scope’s relationship to a set of values.

values []string

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.

StageDelay #

Appears on: StageSpec

StageDelay describes the delay time before going to next.

FieldDescription
durationMilliseconds int64

DurationMilliseconds indicates the stage delay time. If JitterDurationMilliseconds is less than DurationMilliseconds, then JitterDurationMilliseconds is used.

durationFrom ExpressionFromSource

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.

jitterDurationMilliseconds int64

JitterDurationMilliseconds is the duration plus an additional amount chosen uniformly at random from the interval between DurationMilliseconds and JitterDurationMilliseconds.

jitterDurationFrom ExpressionFromSource

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.

StageEvent #

Appears on: StageNext

StageEvent describes one event in the Kubernetes.

FieldDescription
type string

Type is the type of this event (Normal, Warning), It is machine-readable.

reason string

Reason is why the action was taken. It is human-readable.

message string

Message is a human-readable description of the status of this operation.

StageFinalizers #

Appears on: StageNext

StageFinalizers describes the modifications in the finalizers of a resource.

FieldDescription
add []FinalizerItem

Add means that the Finalizers will be added to the resource.

remove []FinalizerItem

Remove means that the Finalizers will be removed from the resource.

empty bool

Empty means that the Finalizers for that resource will be emptied.

StageNext #

Appears on: StageSpec

StageNext describes a stage will be moved to.

FieldDescription
event StageEvent

Event means that an event will be sent.

finalizers StageFinalizers

Finalizers means that finalizers will be modified.

delete bool

Delete means that the resource will be deleted if true.

patches []StagePatch

Patches means that the resource will be patched.

statusTemplate string

StatusTemplate indicates the template for modifying the status of the resource in the next. Deprecated: Use Patches instead.

statusSubresource string

StatusSubresource indicates the name of the subresource that will be patched. The support for this field is not available in Pod and Node resources. Deprecated: Use Patches instead.

statusPatchAs ImpersonationConfig

StatusPatchAs indicates the impersonating configuration for client when patching status. In most cases this will be empty, in which case the default client service account will be used. When this is not empty, a corresponding rbac change is required to grant impersonate privilege. The support for this field is not available in Pod and Node resources. Deprecated: Use Patches instead.

StagePatch #

Appears on: StageNext

StagePatch describes the patch for the resource.

FieldDescription
subresource string

Subresource indicates the name of the subresource that will be patched.

root string

Root indicates the root of the template calculated by the patch.

template string

Template indicates the template for modifying the resource in the next.

type StagePatchType

Type indicates the type of the patch.

impersonation ImpersonationConfig

Impersonation indicates the impersonating configuration for client when patching status. In most cases this will be empty, in which case the default client service account will be used. When this is not empty, a corresponding rbac change is required to grant impersonate privilege. The support for this field is not available in Pod and Node resources.

StagePatchType (string alias) #

Appears on: StagePatch

StagePatchType is the type of the patch.

ValueDescription
"json"

StagePatchTypeJSONPatch is the JSON patch type.

"merge"

StagePatchTypeMergePatch is the merge patch type.

"strategic"

StagePatchTypeStrategicMergePatch is the strategic merge patch type.

StageResourceRef #

Appears on: StageSpec

StageResourceRef specifies the kind and version of the resource.

FieldDescription
apiGroup string

APIGroup of the referent.

kind string

Kind of the referent.

StageSelector #

Appears on: StageSpec

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.

FieldDescription
matchLabels map[string]string

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.

matchAnnotations map[string]string

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.

matchExpressions []SelectorRequirement

MatchExpressions is a list of label selector requirements. The requirements are ANDed.

StageSpec #

Appears on: Stage

StageSpec defines the specification for Stage.

FieldDescription
resourceRef StageResourceRef

ResourceRef specifies the Kind and version of the resource.

selector StageSelector

Selector specifies the stags will be applied to the selected resource.

weight int

Weight means when multiple stages share the same ResourceRef and Selector, a random stage will be matched as the next stage based on the weight.

weightFrom ExpressionFromSource

WeightFrom means is the expression used to get the value. If it is a number type, convert to int. If it is a string type, the value get will be parsed by strconv.ParseInt.

delay StageDelay

Delay means there is a delay in this stage.

next StageNext

Next indicates that this stage will be moved to.

immediateNextStage bool

ImmediateNextStage means that the next stage of matching is performed immediately, without waiting for the Apiserver to push.

StageStatus #

Appears on: Stage

StageStatus holds status for the Stage

FieldDescription
conditions []Condition

Conditions holds conditions for the Stage.