v1

package
v0.0.0-...-e7e48df Latest Latest
Warning

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

Go to latest
Published: May 20, 2019 License: MIT Imports: 8 Imported by: 0

Documentation

Overview

Package v1 contains API Schema definitions for the krane v1 API group +k8s:deepcopy-gen=package,register +groupName=krane.sh

Package v1 contains API Schema definitions for the krane v1 API group +k8s:deepcopy-gen=package,register +groupName=krane.sh

Index

Constants

View Source
const (
	// Initializing indicates that deployment creation and pod initialization
	// is in progress and the operator is waiting until pretest can start
	CanaryProgress_Initializing CanaryProgress = "initializing"
	// Test indicates that the service is being tested using the pretest
	// container to make sure the container can be routed
	CanaryProgress_Testing = "testing"
	// Canary indicates that the operator has split the traffic, created an
	// additional replica of the stable Krane deployment and started the collection
	// of prometheus metrics
	CanaryProgress_Canary = "canary"
	// Reporting indicates that the operator is trying to report results of the test
	// to the pre-configured destination (e.g. github repository)
	CanaryProgress_Reporting = "reporting"
	// Cleanup progress indicates that the canary is now being cleaned up with all
	// created pods and resources
	CanaryProgress_Cleanup = "cleanup"
)
View Source
const (
	CanaryPhaseStatus_Queued     CanaryPhaseStatus = "queued"
	CanaryPhaseStatus_InProgress                   = "in_progress"
	CanaryPhaseStatus_Success                      = "success"
	CanaryPhaseStatus_Failure                      = "failure"
)

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "krane.sh", Version: "v1"}

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

Functions

func RegisterDefaults

func RegisterDefaults(scheme *runtime.Scheme) error

RegisterDefaults adds defaulters functions to the given scheme. Public to allow building arbitrary schemes. All generated defaulters are covering - they call all nested defaulters.

Types

type BaselineMode

type BaselineMode string
const (
	BaselineModeNew BaselineMode = "NEW"
	BaselineModeOld              = "OLD"
)

type Canary

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

	Spec   CanarySpec   `json:"spec,omitempty"`
	Status CanaryStatus `json:"status,omitempty"`
}

Canary is the Schema for the canaries API +k8s:openapi-gen=true

func (*Canary) DeepCopy

func (in *Canary) DeepCopy() *Canary

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

func (*Canary) DeepCopyInto

func (in *Canary) DeepCopyInto(out *Canary)

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

func (*Canary) DeepCopyObject

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

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

type CanaryConfigPhase

type CanaryConfigPhase struct {
	PodName string            `json:"podName,omitempty"`
	Status  CanaryPhaseStatus `json:"status,omitempty"`
	Message string            `json:"message,omitempty"`
}

type CanaryList

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

CanaryList contains a list of Canary

func (*CanaryList) DeepCopy

func (in *CanaryList) DeepCopy() *CanaryList

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

func (*CanaryList) DeepCopyInto

func (in *CanaryList) DeepCopyInto(out *CanaryList)

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

func (*CanaryList) DeepCopyObject

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

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

type CanaryPhaseStatus

type CanaryPhaseStatus string

type CanaryPolicy

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

	Spec   CanaryPolicySpec   `json:"spec,omitempty"`
	Status CanaryPolicyStatus `json:"status,omitempty"`
}

CanaryPolicy is the Schema for the canarypolicies API +k8s:openapi-gen=true

func (*CanaryPolicy) DeepCopy

func (in *CanaryPolicy) DeepCopy() *CanaryPolicy

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

func (*CanaryPolicy) DeepCopyInto

func (in *CanaryPolicy) DeepCopyInto(out *CanaryPolicy)

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

func (*CanaryPolicy) DeepCopyObject

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

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

type CanaryPolicyList

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

CanaryPolicyList contains a list of CanaryPolicy

func (*CanaryPolicyList) DeepCopy

func (in *CanaryPolicyList) DeepCopy() *CanaryPolicyList

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

func (*CanaryPolicyList) DeepCopyInto

func (in *CanaryPolicyList) DeepCopyInto(out *CanaryPolicyList)

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

func (*CanaryPolicyList) DeepCopyObject

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

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

type CanaryPolicySpec

type CanaryPolicySpec struct {
	// Base is the original deployment that the canary will use
	// to copy baseline
	Base string `json:"base,omitempty"`
	// VirtualService is a name of bindable virtualservice that
	// will be used for traffic splitting
	VirtualService string `json:"virtualService,omitempty"`
	// Service is a name of the service to be weight-routed during
	// the canary phase
	Service string `json:"service,omitempty"`
	// Mode is used to determine if baseline uses original
	// or canary configuration
	BaselineMode BaselineMode `json:"baselineMode,omitempty"`
	// DestinationRule is a rule that will be created when a new
	// canary will be deployed
	DestinationRule v1alpha3.DestinationRuleSpec
	// Ports is a list of ports to be be open for the canary when
	// baseline and canary deployments are created
	Ports []corev1.ServicePort

	TestSpec  TestSpec  `json:"test,omitempty"`
	JudgeSpec JudgeSpec `json:"judge,omitempty"`
}

CanaryPolicySpec defines the desired state of CanaryPolicy +k8s:openapi-gen=true

func (*CanaryPolicySpec) DeepCopy

func (in *CanaryPolicySpec) DeepCopy() *CanaryPolicySpec

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

func (*CanaryPolicySpec) DeepCopyInto

func (in *CanaryPolicySpec) DeepCopyInto(out *CanaryPolicySpec)

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

type CanaryPolicyStatus

type CanaryPolicyStatus struct {
}

CanaryPolicyStatus defines the observed state of CanaryPolicy +k8s:openapi-gen=true

func (*CanaryPolicyStatus) DeepCopy

func (in *CanaryPolicyStatus) DeepCopy() *CanaryPolicyStatus

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

func (*CanaryPolicyStatus) DeepCopyInto

func (in *CanaryPolicyStatus) DeepCopyInto(out *CanaryPolicyStatus)

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

type CanaryProgress

type CanaryProgress string

CanaryProgress is a progress of the Krane object during its deployment

type CanarySpec

type CanarySpec struct {
	Policy string `json:"policy,omitempty"`

	Deployments CanarySpecDeployments `json:"deployments,omitempty"`
}

CanarySpec defines the desired state of Canary +k8s:openapi-gen=true

func (*CanarySpec) DeepCopy

func (in *CanarySpec) DeepCopy() *CanarySpec

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

func (*CanarySpec) DeepCopyInto

func (in *CanarySpec) DeepCopyInto(out *CanarySpec)

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

type CanarySpecDeployments

type CanarySpecDeployments struct {
	Canary   string `json:"canary,omitempty"`
	Baseline string `json:"baseline,omitempty"`
	Base     string `json:"base,omitempty"`
}

type CanaryStatus

type CanaryStatus struct {
	Progress CanaryProgress `json:"progress,omitempty"`

	Initialization CanaryConfigPhase `json:"initialization,omitempty"`
	Testing        CanaryConfigPhase `json:"testing,omitempty"`
	Canary         CanaryConfigPhase `json:"canary,omitempty"`
	Judging        CanaryConfigPhase `json:"judging,omitempty"`
	Reporting      CanaryConfigPhase `json:"reporting,omitempty"`
	Cleanup        CanaryConfigPhase `json:"cleanup,omitempty"`
}

CanaryStatus defines the observed state of Canary +k8s:openapi-gen=true

func (*CanaryStatus) DeepCopy

func (in *CanaryStatus) DeepCopy() *CanaryStatus

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

func (*CanaryStatus) DeepCopyInto

func (in *CanaryStatus) DeepCopyInto(out *CanaryStatus)

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

type DiffMetric

type DiffMetric struct {
	Metric    string  `json:"metric,omitempty"`
	Container string  `json:"container,omitempty"`
	Diff      float64 `json:"diff,omitempty"`
}

type JudgeSpec

type JudgeSpec struct {
	Image string   `json:"image,omitempty"`
	Cmd   []string `json:"cmd,omitempty"`

	DiffMetrics      []DiffMetric      `json:"diffMetrics,omitempty"`
	ThresholdMetrics []ThresholdMetric `json:"thresholdMetrics,omitempty"`

	Boundary JudgeSpecBoundary `json:"boundary,omitempty"`
}

+k8s:openapi-gen=true

func (*JudgeSpec) DeepCopy

func (in *JudgeSpec) DeepCopy() *JudgeSpec

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

func (*JudgeSpec) DeepCopyInto

func (in *JudgeSpec) DeepCopyInto(out *JudgeSpec)

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

type JudgeSpecBoundary

type JudgeSpecBoundary struct {
	Time string `json:"time,omitempty"`
}

type TestSpec

type TestSpec struct {
	Image string   `json:"image,omitempty"`
	Cmd   []string `json:"cmd,omitempty"`

	Boundary TestSpecBoundary `json:"boundary,omitempty"`
}

+k8s:openapi-gen=true

func (*TestSpec) DeepCopy

func (in *TestSpec) DeepCopy() *TestSpec

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

func (*TestSpec) DeepCopyInto

func (in *TestSpec) DeepCopyInto(out *TestSpec)

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

type TestSpecBoundary

type TestSpecBoundary struct {
	Time     string `json:"time,omitempty"`
	Requests int    `json:"requests,omitempty"`
}

type ThresholdMetric

type ThresholdMetric struct {
	Metric string `json:"metric,omitempty"`
	Value  string `json:"value,omitempty"`
}

Jump to

Keyboard shortcuts

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