v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 7, 2020 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the ingressdaemonsets v1alpha1 API group +kubebuilder:object:generate=true +groupName=ingressdaemonsets.mumoshu.github.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "ingressdaemonsets.mumoshu.github.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

This section is empty.

Types

type AnnotateToDetach

type AnnotateToDetach struct {
	// Key is the annotation key
	Key string `json:"key,omitempty"`

	// Value is the annotation value
	// +optional
	Value *string `json:"value,omitempty"`

	// GracePeriodSeconds is the duration in seconds to wait before start rolling pods and after annotating the node.
	// If WaitForDetachmentByAnnotatedTimestamp is also set, the controller waits for this grace period passes before
	// waiting with the annotated timestamp.
	GracePeriodSeconds int `json:"gracePeriodSeconds,omitempty"`
}

func (*AnnotateToDetach) DeepCopy

func (in *AnnotateToDetach) DeepCopy() *AnnotateToDetach

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AnnotateToDetach.

func (*AnnotateToDetach) DeepCopyInto

func (in *AnnotateToDetach) DeepCopyInto(out *AnnotateToDetach)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HealthCheckerSpec

type HealthCheckerSpec struct {
	Image              string            `json:"image,omitempty"`
	ImagePullPolicy    corev1.PullPolicy `json:"imagePullPolicy,omitempty"`
	ServiceAccountName string            `json:"serviceAccountName,omitempty"`
}

func (*HealthCheckerSpec) DeepCopy

func (in *HealthCheckerSpec) DeepCopy() *HealthCheckerSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HealthCheckerSpec.

func (*HealthCheckerSpec) DeepCopyInto

func (in *HealthCheckerSpec) DeepCopyInto(out *HealthCheckerSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IngressDaemonSet

type IngressDaemonSet struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   IngressDaemonSetSpec   `json:"spec,omitempty"`
	Status IngressDaemonSetStatus `json:"status,omitempty"`
}

IngressDaemonSet is the Schema for the ingressdaemonsets API

func (*IngressDaemonSet) DeepCopy

func (in *IngressDaemonSet) DeepCopy() *IngressDaemonSet

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressDaemonSet.

func (*IngressDaemonSet) DeepCopyInto

func (in *IngressDaemonSet) DeepCopyInto(out *IngressDaemonSet)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressDaemonSet) DeepCopyObject

func (in *IngressDaemonSet) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IngressDaemonSetList

type IngressDaemonSetList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []IngressDaemonSet `json:"items"`
}

IngressDaemonSetList contains a list of IngressDaemonSet

func (*IngressDaemonSetList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressDaemonSetList.

func (*IngressDaemonSetList) DeepCopyInto

func (in *IngressDaemonSetList) DeepCopyInto(out *IngressDaemonSetList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*IngressDaemonSetList) DeepCopyObject

func (in *IngressDaemonSetList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type IngressDaemonSetSpec

type IngressDaemonSetSpec struct {
	UpdateStrategy UpdateStrategySpec `json:"updateStrategy,omitempty"`

	// HealthCheckNodePorts is the list of ports bound by the health-checker daemonset to serve health-check http requests from the
	// external loadbalancer.
	//
	// You usually include only one port in the list, and add the second port only when you need to migrate the
	// health-check port.
	HealthCheckNodePorts []int `json:"healthCheckNodePorts,omitempty"`

	// HealthCheckerSpec is used for configuring the health-checking daemonset
	HealthChecker HealthCheckerSpec `json:"healthChecker,omitempty"`

	// NodeSelector is a set of key-value pairs for selecting nodes to schedule ingress daemonset pods
	NodeSelector map[string]string `json:"nodeSelector,omitempty"`

	Template corev1.PodTemplateSpec `json:"template,omitempty"`
}

IngressDaemonSetSpec defines the desired state of IngressDaemonSet

func (*IngressDaemonSetSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressDaemonSetSpec.

func (*IngressDaemonSetSpec) DeepCopyInto

func (in *IngressDaemonSetSpec) DeepCopyInto(out *IngressDaemonSetSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type IngressDaemonSetStatus

type IngressDaemonSetStatus struct {
}

IngressDaemonSetStatus defines the observed state of IngressDaemonSet

func (*IngressDaemonSetStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressDaemonSetStatus.

func (*IngressDaemonSetStatus) DeepCopyInto

func (in *IngressDaemonSetStatus) DeepCopyInto(out *IngressDaemonSetStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type RollingUpdateSpec

type RollingUpdateSpec struct {
	// MaxUnavailableNodes is the max number of nodes for which the controller runs rolling-update with
	// detaching the node from, and after pods got updated, attaching the node to the external loadbalancer.
	//
	// The default value is 0, which means it relies on maxUnavaiablePodsPerNode and maxDegaradedNodes only.
	// +optional
	MaxUnavailableNodes *int `json:"maxUnavailableNodes,omitempty"`

	// MaxDegradedNodes is the max number of nodes for which the controller runs rolling-updates without detaching node
	// from external loadbalancer.
	//
	// The default is 1. You can only set either of `maxUnavaiableNodes` or `maxDegradedNodes` to 1 or greater.
	// +optional
	MaxDegradedNodes *int `json:"maxDegradedNodes,omitempty"`

	// MaxUnavailablePodsPerNode is the number for configuring updateStrategy.rollingUpdate.maxUnavailable for the per-node
	// deployment
	MaxUnavailablePodsPerNode *intstr.IntOrString `json:"maxUnavailablePodsPerNodes,omitempty"`

	// MaxSurgedPodsPerNode is the maxSurge for the per-node deployment
	MaxSurgedPodsPerNode *intstr.IntOrString `json:"maxSurgedPodsPerNode,omitempty"`

	// AnnotateDeploymentToDetach configures the controller to annotate the per-node deployment before updating pods scheduled onto the node.
	// It can either be (1) annotation key or (2) annotation key=value.
	// When the first option is used, the controller annotate the node with the specified key, without an empty value.
	AnnotateDeploymentToDetach *AnnotateToDetach `json:"annotateDeploymentToDetach,omitempty"`

	// AnnotateNodeToDetach configures the controller to annotate the node before updating pods scheduled onto the node.
	// It can either be (1) annotation key or (2) annotation key=value.
	// When the first option is used, the controller annotate the node with the specified key, without an empty value.
	AnnotateNodeToDetach *AnnotateToDetach `json:"annotateNodeToDetach,omitempty"`

	// WaitForDetachmentByAnnotatedTimestamp configures the controller to wait for the certain period since the detachment
	// timestamp stored in the specified annotation.
	//
	// This depends on and requires configuring AnnotateNodeToDetach, too.
	WaitForDetachmentByAnnotatedTimestamp *WaitForDetachmentByAnnotatedTimestamp `json:"waitForDetachmentByAnnotatedTimestamp,omitempty"`
}

func (*RollingUpdateSpec) DeepCopy

func (in *RollingUpdateSpec) DeepCopy() *RollingUpdateSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RollingUpdateSpec.

func (*RollingUpdateSpec) DeepCopyInto

func (in *RollingUpdateSpec) DeepCopyInto(out *RollingUpdateSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpdateStrategySpec

type UpdateStrategySpec struct {
	// Type is the type of strategy. The only supported type is "RollingUpdate"
	Type string `json:"type,omitempty"`

	// RollingUpdate contains various configuration options for the RollingUpdate update strategy
	RollingUpdate RollingUpdateSpec `json:"rollingUpdate,omitempty"`
}

func (*UpdateStrategySpec) DeepCopy

func (in *UpdateStrategySpec) DeepCopy() *UpdateStrategySpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpdateStrategySpec.

func (*UpdateStrategySpec) DeepCopyInto

func (in *UpdateStrategySpec) DeepCopyInto(out *UpdateStrategySpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type WaitForDetachmentByAnnotatedTimestamp

type WaitForDetachmentByAnnotatedTimestamp struct {
	// Key is the key of the annotation to extract the timestamp
	Key string `json:"key,omitempty"`

	// Format is the format of the timestamp saved in the annotation value.
	// The only supported value is "RFC3339".
	// +optinal
	Format *string `json:"format,omitempty"`

	// GracePeriodSeconds is the duration in seconds to wait before start rolling pods and after the time stored in the
	// timestamp
	GracePeriodSeconds int `json:"gracePeriodSeconds,omitempty"`
}

func (*WaitForDetachmentByAnnotatedTimestamp) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WaitForDetachmentByAnnotatedTimestamp.

func (*WaitForDetachmentByAnnotatedTimestamp) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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