Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the picchu v1alpha1 API group +k8s:deepcopy-gen=package,register +k8s:defaulter-gen=TypeMeta +groupName=picchu.medium.engineering
Package v1alpha1 contains API Schema definitions for the picchu v1alpha1 API group +k8s:deepcopy-gen=package,register +groupName=picchu.medium.engineering
Index ¶
- Constants
- Variables
- func RegisterDefaults(scheme *runtime.Scheme) error
- func SetDefaults_ClusterSpec(spec *ClusterSpec)
- func SetDefaults_RevisionSpec(spec *RevisionSpec)
- func SetExternalTestDefaults(externalTest *ExternalTest)
- func SetObjectDefaults_Cluster(in *Cluster)
- func SetObjectDefaults_ClusterList(in *ClusterList)
- func SetObjectDefaults_Revision(in *Revision)
- func SetObjectDefaults_RevisionList(in *RevisionList)
- func SetPortDefaults(port *PortInfo)
- func SetReleaseDefaults(release *ReleaseInfo)
- func SetScaleDefaults(scale *ScaleInfo)
- type AWSInfo
- type Canary
- type Cluster
- func (c *Cluster) AddFinalizer()
- func (c *Cluster) Config(secret *corev1.Secret) (*rest.Config, error)
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (c *Cluster) Finalize()
- func (c *Cluster) Fleet() string
- func (c *Cluster) IsDeleted() bool
- func (c *Cluster) IsFinalized() bool
- type ClusterConfig
- type ClusterIngresses
- type ClusterKubernetesStatus
- type ClusterList
- type ClusterSecretSource
- type ClusterSecretTarget
- type ClusterSecrets
- func (c *ClusterSecrets) AddFinalizer()
- func (in *ClusterSecrets) DeepCopy() *ClusterSecrets
- func (in *ClusterSecrets) DeepCopyInto(out *ClusterSecrets)
- func (in *ClusterSecrets) DeepCopyObject() runtime.Object
- func (c *ClusterSecrets) Finalize()
- func (c *ClusterSecrets) IsDeleted() bool
- func (c *ClusterSecrets) IsFinalized() bool
- type ClusterSecretsList
- type ClusterSecretsSpec
- type ClusterSecretsStatus
- type ClusterSpec
- type ClusterStatus
- type ConfigSelector
- type ExternalTest
- type FaultInjector
- type FaultInjectorList
- type FaultInjectorSpec
- type FaultInjectorStatus
- type GeometricScaling
- type HTTPPortFault
- type IAMInfo
- type IngressInfo
- type Istio
- type IstioHTTPPortConfig
- type IstioPortConfig
- type IstioSidecar
- type LinearScaling
- type Mirror
- type MirrorList
- type MirrorSpec
- type MirrorStatus
- type PortInfo
- type PortMode
- type ReleaseInfo
- type ReleaseManager
- func (in *ReleaseManager) DeepCopy() *ReleaseManager
- func (in *ReleaseManager) DeepCopyInto(out *ReleaseManager)
- func (in *ReleaseManager) DeepCopyObject() runtime.Object
- func (r *ReleaseManager) Finalize()
- func (r *ReleaseManager) IsDeleted() bool
- func (r *ReleaseManager) IsFinalized() bool
- func (r *ReleaseManager) RevisionStatus(tag string) *ReleaseManagerRevisionStatus
- func (r *ReleaseManager) TargetNamespace() string
- func (r *ReleaseManager) UpdateRevisionStatus(u *ReleaseManagerRevisionStatus)
- type ReleaseManagerList
- type ReleaseManagerRevisionMetricsStatus
- type ReleaseManagerRevisionScaleStatus
- type ReleaseManagerRevisionStateStatus
- type ReleaseManagerRevisionStatus
- type ReleaseManagerSpec
- type ReleaseManagerStatus
- type Retries
- type Revision
- func (in *Revision) DeepCopy() *Revision
- func (in *Revision) DeepCopyInto(out *Revision)
- func (in *Revision) DeepCopyObject() runtime.Object
- func (r *Revision) Fail()
- func (r *Revision) Failed() bool
- func (r *Revision) GitTimestamp() time.Time
- func (r *Revision) HasTarget(name string) bool
- func (r *Revision) SinceFailed() time.Duration
- type RevisionApp
- type RevisionList
- type RevisionReleaseStatus
- type RevisionScaleStatus
- type RevisionSpec
- type RevisionStatus
- type RevisionTarget
- type RevisionTargetStatus
- type SLICanaryConfig
- type ScaleInfo
- type SentryInfo
- type ServiceLevelIndicator
- type ServiceLevelObjective
- type ServiceLevelObjectiveLabels
- type ServiceMonitor
- type Variant
- type WorkerScaleInfo
Constants ¶
const ( PrivateIngressName = "private" PublicIngressName = "public" )
const ( // PortPublic sets a port to be published to the Internet. PortPublic PortMode = "public" // PortPrivate sets a port to be published on a private gateway, making it available to other // clusters and users on our private networks (including VPN), but not on the Internet. PortPrivate PortMode = "private" // PortInternal sets the port to not be published to any gateway, making it only available within // the local Kubernetes cluster. PortLocal PortMode = "local" ScalingStrategyNone = "none" ScalingStrategyLinear = "linear" ScalingStrategyGeometric = "geometric" )
const ( HumaneSchedule = "humane" InhumaneSchedule = "inhumane" AlwaysSchedule = "always" LabelApp = "picchu.medium.engineering/app" LabelTag = "picchu.medium.engineering/tag" LabelCluster = "picchu.medium.engineering/cluster" LabelFleet = "picchu.medium.engineering/fleet" LabelRevision = "picchu.medium.engineering/revision" LabelTarget = "picchu.medium.engineering/target" LabelOwnerName = "picchu.medium.engineering/ownerName" LabelOwnerType = "picchu.medium.engineering/ownerType" LabelIstioApp = "app" LabelIstioVersion = "version" LabelK8sName = "app.kubernetes.io/name" LabelK8sVersion = "app.kubernetes.io/version" LabelCommit = "picchu.medium.engineering/commit" LabelRuleType = "picchu.medium.engineering/ruleType" LabelFleetPrefix = "fleet.picchu.medium.engineering/" LabelIgnore = "picchu.medium.engineering/ignore" // LabelTargetDeletablePrefix is used to signal that a releasemanager no longer needs the revision and it can be deleted LabelTargetDeletablePrefix = "target-deletable.picchu.medium.engineering/" FinalizerReleaseManager = "picchu.medium.engineering/releasemanager" FinalizerCluster = "picchu.medium.engineering/cluster" FinalizerClusterSecrets = "picchu.medium.engineering/clustersecrets" OwnerReleaseManager = "releasemanager" AnnotationGitCommitterTimestamp = "git-scm.com/committer-timestamp" AnnotationRevisionCreationTimestamp = "revisionCreationTimestamp" AnnotationIAMRole = "iam.amazonaws.com/role" // TODO(bob): camelCase AnnotationFailedAt = "picchu.medium.engineering/failed-at-timestamp" AnnotationRepo = "picchu.medium.engineering/repo" AnnotationCanaryStartedTimestamp = "picchu.medium.engineering/canaryStartedTimestamp" AnnotationAutoscaler = "picchu.medium.engineering/autoscaler" AutoscalerTypeHPA = "hpa" AutoscalerTypeWPA = "wpa" )
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: "picchu.medium.engineering", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} AddToScheme = SchemeBuilder.AddToScheme )
var ( ScalingStrategies = []string{ ScalingStrategyLinear, ScalingStrategyGeometric, } )
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 SetDefaults_ClusterSpec ¶
func SetDefaults_ClusterSpec(spec *ClusterSpec)
func SetDefaults_RevisionSpec ¶
func SetDefaults_RevisionSpec(spec *RevisionSpec)
func SetExternalTestDefaults ¶
func SetExternalTestDefaults(externalTest *ExternalTest)
func SetObjectDefaults_Cluster ¶
func SetObjectDefaults_Cluster(in *Cluster)
func SetObjectDefaults_ClusterList ¶
func SetObjectDefaults_ClusterList(in *ClusterList)
func SetObjectDefaults_Revision ¶
func SetObjectDefaults_Revision(in *Revision)
func SetObjectDefaults_RevisionList ¶
func SetObjectDefaults_RevisionList(in *RevisionList)
func SetPortDefaults ¶
func SetPortDefaults(port *PortInfo)
func SetReleaseDefaults ¶
func SetReleaseDefaults(release *ReleaseInfo)
func SetScaleDefaults ¶
func SetScaleDefaults(scale *ScaleInfo)
Types ¶
type AWSInfo ¶
type AWSInfo struct {
IAM IAMInfo `json:"iam,omitempty"`
}
TODO(lyra): PodTemplate
func (*AWSInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSInfo.
func (*AWSInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Canary ¶
func (*Canary) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Canary.
func (*Canary) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Cluster ¶
type Cluster struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterSpec `json:"spec,omitempty"`
Status ClusterStatus `json:"status,omitempty"`
}
Cluster is the Schema for the clusters API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:categories=all;picchu
func (*Cluster) AddFinalizer ¶
func (c *Cluster) AddFinalizer()
func (*Cluster) Config ¶
Config creates a rest.Config for the Cluster, whether it be remote or incluster. Secret is expected to contain "auth-info" if Config is specified.
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) IsFinalized ¶
type ClusterConfig ¶
type ClusterConfig struct {
Server string `json:"server"`
CertificateAuthorityData []byte `json:"certificate-authority-data"`
}
func (*ClusterConfig) DeepCopy ¶
func (in *ClusterConfig) DeepCopy() *ClusterConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterConfig.
func (*ClusterConfig) DeepCopyInto ¶
func (in *ClusterConfig) DeepCopyInto(out *ClusterConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterIngresses ¶
type ClusterIngresses struct {
Public IngressInfo `json:"public"`
Private IngressInfo `json:"private"`
}
func (*ClusterIngresses) DeepCopy ¶
func (in *ClusterIngresses) DeepCopy() *ClusterIngresses
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterIngresses.
func (*ClusterIngresses) DeepCopyInto ¶
func (in *ClusterIngresses) DeepCopyInto(out *ClusterIngresses)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterKubernetesStatus ¶
func (*ClusterKubernetesStatus) DeepCopy ¶
func (in *ClusterKubernetesStatus) DeepCopy() *ClusterKubernetesStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterKubernetesStatus.
func (*ClusterKubernetesStatus) DeepCopyInto ¶
func (in *ClusterKubernetesStatus) DeepCopyInto(out *ClusterKubernetesStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterList ¶
type ClusterList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Cluster `json:"items"`
}
ClusterList contains a list of Cluster
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSecretSource ¶
type ClusterSecretSource struct {
Namespace string `json:"namespace"`
LabelSelector string `json:"labelSelector,omitempty"`
FieldSelector string `json:"fieldSelector,omitempty"`
}
func (*ClusterSecretSource) DeepCopy ¶
func (in *ClusterSecretSource) DeepCopy() *ClusterSecretSource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretSource.
func (*ClusterSecretSource) DeepCopyInto ¶
func (in *ClusterSecretSource) DeepCopyInto(out *ClusterSecretSource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSecretTarget ¶
type ClusterSecretTarget struct {
// Namespace to copy secrets to
Namespace string `json:"namespace"`
// LabelSelector of clusters to copy secrets to
LabelSelector string `json:"labelSelector,omitempty"`
// FieldSelector of clusters to copy secrets to
FieldSelector string `json:"fieldSelector,omitempty"`
// Labels to add to the copied secrets
Labels map[string]string `json:"labels,omitempty"`
// Annotations to add to the copied secrets
Annotations map[string]string `json:"annotations,omitempty"`
}
func (*ClusterSecretTarget) DeepCopy ¶
func (in *ClusterSecretTarget) DeepCopy() *ClusterSecretTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretTarget.
func (*ClusterSecretTarget) DeepCopyInto ¶
func (in *ClusterSecretTarget) DeepCopyInto(out *ClusterSecretTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSecrets ¶
type ClusterSecrets struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ClusterSecretsSpec `json:"spec,omitempty"`
Status ClusterSecretsStatus `json:"status,omitempty"`
}
ClusterSecrets is the Schema for the clustersecrets API +k8s:openapi-gen=true
func (*ClusterSecrets) AddFinalizer ¶
func (c *ClusterSecrets) AddFinalizer()
func (*ClusterSecrets) DeepCopy ¶
func (in *ClusterSecrets) DeepCopy() *ClusterSecrets
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecrets.
func (*ClusterSecrets) DeepCopyInto ¶
func (in *ClusterSecrets) DeepCopyInto(out *ClusterSecrets)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterSecrets) DeepCopyObject ¶
func (in *ClusterSecrets) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterSecrets) Finalize ¶
func (c *ClusterSecrets) Finalize()
func (*ClusterSecrets) IsDeleted ¶
func (c *ClusterSecrets) IsDeleted() bool
func (*ClusterSecrets) IsFinalized ¶
func (c *ClusterSecrets) IsFinalized() bool
type ClusterSecretsList ¶
type ClusterSecretsList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ClusterSecrets `json:"items"`
}
ClusterSecretsList contains a list of ClusterSecrets
func (*ClusterSecretsList) DeepCopy ¶
func (in *ClusterSecretsList) DeepCopy() *ClusterSecretsList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretsList.
func (*ClusterSecretsList) DeepCopyInto ¶
func (in *ClusterSecretsList) DeepCopyInto(out *ClusterSecretsList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterSecretsList) DeepCopyObject ¶
func (in *ClusterSecretsList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ClusterSecretsSpec ¶
type ClusterSecretsSpec struct {
Source ClusterSecretSource `json:"source"`
Target ClusterSecretTarget `json:"target"`
}
ClusterSecretsSpec defines the desired state of ClusterSecrets +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:categories=picchu
func (*ClusterSecretsSpec) DeepCopy ¶
func (in *ClusterSecretsSpec) DeepCopy() *ClusterSecretsSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretsSpec.
func (*ClusterSecretsSpec) DeepCopyInto ¶
func (in *ClusterSecretsSpec) DeepCopyInto(out *ClusterSecretsSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSecretsStatus ¶
type ClusterSecretsStatus struct {
// Names of secrets copied to targets
// +listType=set
Secrets []string `json:"secrets,omitempty"`
}
ClusterSecretsStatus defines the observed state of ClusterSecrets +k8s:openapi-gen=true
func (*ClusterSecretsStatus) DeepCopy ¶
func (in *ClusterSecretsStatus) DeepCopy() *ClusterSecretsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSecretsStatus.
func (*ClusterSecretsStatus) DeepCopyInto ¶
func (in *ClusterSecretsStatus) DeepCopyInto(out *ClusterSecretsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct {
Enabled bool `json:"enabled"`
HotStandby bool `json:"hotStandby,omitempty"`
Config *ClusterConfig `json:"config,omitempty"`
ScalingFactorString *string `json:"scalingFactorString,omitempty"`
Ingresses ClusterIngresses `json:"ingresses"`
EnableDevRoutes bool `json:"enableDevRoutes,omitempty"`
DevRouteTagTemplate string `json:"devRouteTagTemplate,omitempty"`
}
ClusterSpec defines the desired state of Cluster
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct {
Kubernetes ClusterKubernetesStatus `json:"kubernetes,omitempty"`
}
ClusterStatus defines the observed state of Cluster
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ConfigSelector ¶
type ConfigSelector struct {
Namespace string `json:"namespace,omitempty"`
LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"`
AppLabelName string `json:"appLabelName"`
TagLabelName string `json:"tagLabelName"`
}
func (*ConfigSelector) DeepCopy ¶
func (in *ConfigSelector) DeepCopy() *ConfigSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConfigSelector.
func (*ConfigSelector) DeepCopyInto ¶
func (in *ConfigSelector) DeepCopyInto(out *ConfigSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExternalTest ¶
type ExternalTest struct {
Enabled bool `json:"enabled"`
Started bool `json:"started"`
Completed bool `json:"completed"`
Succeeded bool `json:"succeeded,omitempty"`
Timeout *metav1.Duration `json:"timeout,omitempty"`
LastUpdated *metav1.Time `json:"lastUpdated,omitempty"`
}
func (*ExternalTest) DeepCopy ¶
func (in *ExternalTest) DeepCopy() *ExternalTest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExternalTest.
func (*ExternalTest) DeepCopyInto ¶
func (in *ExternalTest) DeepCopyInto(out *ExternalTest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FaultInjector ¶
type FaultInjector struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec FaultInjectorSpec `json:"spec,omitempty"`
Status FaultInjectorStatus `json:"status,omitempty"`
}
FaultInjector is the Schema for the faultinjectors API +kubebuilder:subresource:status +kubebuilder:resource:path=faultinjectors,scope=Namespaced
func (*FaultInjector) DeepCopy ¶
func (in *FaultInjector) DeepCopy() *FaultInjector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultInjector.
func (*FaultInjector) DeepCopyInto ¶
func (in *FaultInjector) DeepCopyInto(out *FaultInjector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FaultInjector) DeepCopyObject ¶
func (in *FaultInjector) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FaultInjectorList ¶
type FaultInjectorList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []FaultInjector `json:"items"`
}
FaultInjectorList contains a list of FaultInjector
func (*FaultInjectorList) DeepCopy ¶
func (in *FaultInjectorList) DeepCopy() *FaultInjectorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultInjectorList.
func (*FaultInjectorList) DeepCopyInto ¶
func (in *FaultInjectorList) DeepCopyInto(out *FaultInjectorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*FaultInjectorList) DeepCopyObject ¶
func (in *FaultInjectorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type FaultInjectorSpec ¶
type FaultInjectorSpec struct {
HTTPPortFaults []HTTPPortFault `json:"httpPortFaults"`
}
FaultInjectorSpec defines the desired state of FaultInjector
func (*FaultInjectorSpec) DeepCopy ¶
func (in *FaultInjectorSpec) DeepCopy() *FaultInjectorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultInjectorSpec.
func (*FaultInjectorSpec) DeepCopyInto ¶
func (in *FaultInjectorSpec) DeepCopyInto(out *FaultInjectorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FaultInjectorStatus ¶
type FaultInjectorStatus struct {
}
FaultInjectorStatus defines the observed state of FaultInjector
func (*FaultInjectorStatus) DeepCopy ¶
func (in *FaultInjectorStatus) DeepCopy() *FaultInjectorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FaultInjectorStatus.
func (*FaultInjectorStatus) DeepCopyInto ¶
func (in *FaultInjectorStatus) DeepCopyInto(out *FaultInjectorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GeometricScaling ¶
type GeometricScaling struct {
Start uint32 `json:"start,omitempty"`
Factor uint32 `json:"factor,omitempty"`
Delay *metav1.Duration `json:"delay,omitempty"`
}
func (*GeometricScaling) DeepCopy ¶
func (in *GeometricScaling) DeepCopy() *GeometricScaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeometricScaling.
func (*GeometricScaling) DeepCopyInto ¶
func (in *GeometricScaling) DeepCopyInto(out *GeometricScaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HTTPPortFault ¶
type HTTPPortFault struct {
PortSelector *istio.PortSelector `json:"portSelector,omitempty"`
HTTPFault *istio.HTTPFaultInjection `json:"fault,omitempty"`
}
HTTPPortFault allows injecting faults into apps by port number +k8s:deepcopy-gen=false
func (*HTTPPortFault) DeepCopy ¶
func (in *HTTPPortFault) DeepCopy() *HTTPPortFault
func (*HTTPPortFault) DeepCopyInto ¶
func (in *HTTPPortFault) DeepCopyInto(out *HTTPPortFault)
type IAMInfo ¶
type IAMInfo struct {
RoleARN string `json:"role_arn,omitempty"`
}
func (*IAMInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IAMInfo.
func (*IAMInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IngressInfo ¶
type IngressInfo struct {
DNSName string `json:"dnsName"`
Gateway string `json:"gateway,omitempty"`
DefaultDomains []string `json:"defaultDomains"`
}
func (*IngressInfo) DeepCopy ¶
func (in *IngressInfo) DeepCopy() *IngressInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IngressInfo.
func (*IngressInfo) DeepCopyInto ¶
func (in *IngressInfo) DeepCopyInto(out *IngressInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Istio ¶
type Istio struct {
TrafficPolicy *istio.TrafficPolicy `json:"trafficPolicy,omitempty"`
Sidecar *IstioSidecar `json:"sidecar,omitempty"`
}
see custom_deepcopy.go +k8s:deepcopy-gen=false
func (*Istio) DeepCopy ¶
Istio uses proto.Clone, and therefore doesn't implement recursive deepCopy. If we want to use a subtype of istio's nested apis, we'll need to wrap the structs and create our own deepcopy impl.
func (*Istio) DeepCopyInto ¶
type IstioHTTPPortConfig ¶
type IstioHTTPPortConfig struct {
Retries *Retries `json:"retries,omitempty"`
Timeout *metav1.Duration `json:"timeout,omitempty"`
}
func (*IstioHTTPPortConfig) DeepCopy ¶
func (in *IstioHTTPPortConfig) DeepCopy() *IstioHTTPPortConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioHTTPPortConfig.
func (*IstioHTTPPortConfig) DeepCopyInto ¶
func (in *IstioHTTPPortConfig) DeepCopyInto(out *IstioHTTPPortConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IstioPortConfig ¶
type IstioPortConfig struct {
HTTP IstioHTTPPortConfig `json:"http,omitempty"`
}
func (*IstioPortConfig) DeepCopy ¶
func (in *IstioPortConfig) DeepCopy() *IstioPortConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioPortConfig.
func (*IstioPortConfig) DeepCopyInto ¶
func (in *IstioPortConfig) DeepCopyInto(out *IstioPortConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IstioSidecar ¶
type IstioSidecar struct {
EgressHosts []string `json:"egressHosts,omitempty"`
}
func (*IstioSidecar) DeepCopy ¶
func (in *IstioSidecar) DeepCopy() *IstioSidecar
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IstioSidecar.
func (*IstioSidecar) DeepCopyInto ¶
func (in *IstioSidecar) DeepCopyInto(out *IstioSidecar)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LinearScaling ¶
type LinearScaling struct {
Increment uint32 `json:"increment,omitempty"`
Delay *metav1.Duration `json:"delay,omitempty"`
}
func (*LinearScaling) DeepCopy ¶
func (in *LinearScaling) DeepCopy() *LinearScaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LinearScaling.
func (*LinearScaling) DeepCopyInto ¶
func (in *LinearScaling) DeepCopyInto(out *LinearScaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Mirror ¶
type Mirror struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec MirrorSpec `json:"spec,omitempty"`
Status MirrorStatus `json:"status,omitempty"`
}
Mirror is the Schema for the mirrors API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced
func (*Mirror) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Mirror.
func (*Mirror) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Mirror) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MirrorList ¶
type MirrorList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Mirror `json:"items"`
}
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object MirrorList contains a list of Mirror
func (*MirrorList) DeepCopy ¶
func (in *MirrorList) DeepCopy() *MirrorList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MirrorList.
func (*MirrorList) DeepCopyInto ¶
func (in *MirrorList) DeepCopyInto(out *MirrorList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MirrorList) DeepCopyObject ¶
func (in *MirrorList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MirrorSpec ¶
type MirrorSpec struct {
ClusterName string `json:"clusterName"`
AdditionalConfigSelectors []ConfigSelector `json:"additionalConfigSelectors,omitempty"`
}
MirrorSpec defines the desired state of Mirror
func (*MirrorSpec) DeepCopy ¶
func (in *MirrorSpec) DeepCopy() *MirrorSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MirrorSpec.
func (*MirrorSpec) DeepCopyInto ¶
func (in *MirrorSpec) DeepCopyInto(out *MirrorSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MirrorStatus ¶
type MirrorStatus struct{}
MirrorStatus defines the observed state of Mirror
func (*MirrorStatus) DeepCopy ¶
func (in *MirrorStatus) DeepCopy() *MirrorStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MirrorStatus.
func (*MirrorStatus) DeepCopyInto ¶
func (in *MirrorStatus) DeepCopyInto(out *MirrorStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PortInfo ¶
type PortInfo struct {
Name string `json:"name"`
Hosts []string `json:"hosts,omitempty"`
IngressPort int32 `json:"ingressPort,omitempty"`
Port int32 `json:"port,omitempty"`
ContainerPort int32 `json:"containerPort,omitempty"`
Protocol corev1.Protocol `json:"protocol,omitempty"`
Mode PortMode `json:"mode"`
// Default denotes that this port will receive the default hostnames for the service. This is only useful if a
// service exposes multiple ports over the same ingress gateway (mode: public or private). If only one port is
// exposed, it will be the default port. If multiple ports are exposed and no default is specified and a port with
// the `http` name is present, it will become the default port. If multiple ports are specified and the `http` port
// is not present, validation will fail. Only Mode == (private|public) use the default flag, as they are trafficked
// through the same external port. Internal ports can have the same hostnames since they can be selected by port
// number.
Default bool `json:"default,omitempty"`
Ingresses []string `json:"ingresses,omitempty"`
Istio IstioPortConfig `json:"istio,omitempty"`
}
func (*PortInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PortInfo.
func (*PortInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseInfo ¶
type ReleaseInfo struct {
Eligible bool `json:"eligible,omitempty"`
Max uint32 `json:"max,omitempty"`
ScalingStrategy string `json:"scalingStrategy,omitempty"`
GeometricScaling GeometricScaling `json:"geometricScaling,omitempty"`
LinearScaling LinearScaling `json:"linearScaling,omitempty"`
Schedule string `json:"schedule,omitempty"`
TTL int64 `json:"ttl,omitempty"`
}
func (*ReleaseInfo) DeepCopy ¶
func (in *ReleaseInfo) DeepCopy() *ReleaseInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseInfo.
func (*ReleaseInfo) DeepCopyInto ¶
func (in *ReleaseInfo) DeepCopyInto(out *ReleaseInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseManager ¶
type ReleaseManager struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ReleaseManagerSpec `json:"spec,omitempty"`
Status ReleaseManagerStatus `json:"status,omitempty"`
}
ReleaseManager is the Schema for the releasemanagers API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:categories=all;picchu
func (*ReleaseManager) DeepCopy ¶
func (in *ReleaseManager) DeepCopy() *ReleaseManager
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManager.
func (*ReleaseManager) DeepCopyInto ¶
func (in *ReleaseManager) DeepCopyInto(out *ReleaseManager)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseManager) DeepCopyObject ¶
func (in *ReleaseManager) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ReleaseManager) Finalize ¶
func (r *ReleaseManager) Finalize()
func (*ReleaseManager) IsDeleted ¶
func (r *ReleaseManager) IsDeleted() bool
func (*ReleaseManager) IsFinalized ¶
func (r *ReleaseManager) IsFinalized() bool
func (*ReleaseManager) RevisionStatus ¶
func (r *ReleaseManager) RevisionStatus(tag string) *ReleaseManagerRevisionStatus
func (*ReleaseManager) TargetNamespace ¶
func (r *ReleaseManager) TargetNamespace() string
func (*ReleaseManager) UpdateRevisionStatus ¶
func (r *ReleaseManager) UpdateRevisionStatus(u *ReleaseManagerRevisionStatus)
type ReleaseManagerList ¶
type ReleaseManagerList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ReleaseManager `json:"items"`
}
ReleaseManagerList contains a list of ReleaseManager
func (*ReleaseManagerList) DeepCopy ¶
func (in *ReleaseManagerList) DeepCopy() *ReleaseManagerList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerList.
func (*ReleaseManagerList) DeepCopyInto ¶
func (in *ReleaseManagerList) DeepCopyInto(out *ReleaseManagerList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseManagerList) DeepCopyObject ¶
func (in *ReleaseManagerList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ReleaseManagerRevisionMetricsStatus ¶
type ReleaseManagerRevisionMetricsStatus struct {
GitCreateSecondsInt *int `json:"gitCreateSecondsInt,omitempty"`
GitDeploySecondsInt *int `json:"gitDeploySecondsInt,omitempty"`
GitCanarySecondsInt *int `json:"gitCanarySecondsInt,omitempty"`
GitPendingReleaseSecondsInt *int `json:"gitPendingReleaseSecondsInt,omitempty"`
GitReleaseSecondsInt *int `json:"gitReleaseSecondsInt,omitempty"`
RevisionDeploySecondsInt *int `json:"revisionDeploySecondsInt,omitempty"`
RevisionCanarySecondsInt *int `json:"revisionCanarySecondsInt,omitempty"`
RevisionReleaseSecondsInt *int `json:"revisionReleaseSecondsInt,omitempty"`
ReivisonPendingReleaseSecondsInt *int `json:"revisionPendingReleaseSecondsInt,omitempty"`
RevisionRollbackSecondsInt *int `json:"revisionRollbackSecondsInt,omitempty"`
DeploySecondsInt *int `json:"deploySecondsInt,omitempty"`
CanarySecondsInt *int `json:"canarySecondsInt,omitempty"`
ReleaseSecondsInt *int `json:"releaseSecondsInt,omitempty"`
}
ReleaseManagerRevisionMetricsStatus defines the observed state of ReleaseManagerRevisionMetrics
func (*ReleaseManagerRevisionMetricsStatus) DeepCopy ¶
func (in *ReleaseManagerRevisionMetricsStatus) DeepCopy() *ReleaseManagerRevisionMetricsStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerRevisionMetricsStatus.
func (*ReleaseManagerRevisionMetricsStatus) DeepCopyInto ¶
func (in *ReleaseManagerRevisionMetricsStatus) DeepCopyInto(out *ReleaseManagerRevisionMetricsStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseManagerRevisionScaleStatus ¶
type ReleaseManagerRevisionScaleStatus struct {
Current int32 `json:"Current,omitempty"`
Desired int32 `json:"Desired,omitempty"`
Peak int32 `json:"Peak,omitempty"`
}
func (*ReleaseManagerRevisionScaleStatus) DeepCopy ¶
func (in *ReleaseManagerRevisionScaleStatus) DeepCopy() *ReleaseManagerRevisionScaleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerRevisionScaleStatus.
func (*ReleaseManagerRevisionScaleStatus) DeepCopyInto ¶
func (in *ReleaseManagerRevisionScaleStatus) DeepCopyInto(out *ReleaseManagerRevisionScaleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseManagerRevisionStateStatus ¶
type ReleaseManagerRevisionStateStatus struct {
Current string `json:"current"`
Target string `json:"target"`
LastUpdated *metav1.Time `json:"lastUpdated,omitempty"`
}
func (*ReleaseManagerRevisionStateStatus) DeepCopy ¶
func (in *ReleaseManagerRevisionStateStatus) DeepCopy() *ReleaseManagerRevisionStateStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerRevisionStateStatus.
func (*ReleaseManagerRevisionStateStatus) DeepCopyInto ¶
func (in *ReleaseManagerRevisionStateStatus) DeepCopyInto(out *ReleaseManagerRevisionStateStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ReleaseManagerRevisionStateStatus) EqualTo ¶
func (r *ReleaseManagerRevisionStateStatus) EqualTo(other *ReleaseManagerRevisionStateStatus) bool
type ReleaseManagerRevisionStatus ¶
type ReleaseManagerRevisionStatus struct {
Tag string `json:"tag"`
State ReleaseManagerRevisionStateStatus `json:"state,omitempty"`
CurrentPercent uint32 `json:"currentPercent"`
PeakPercent uint32 `json:"peakPercent"`
ReleaseEligible bool `json:"releaseEligible"`
TriggeredAlarms []string `json:"triggeredAlerts,omitempty"`
LastUpdated *metav1.Time `json:"lastUpdated"`
GitTimestamp *metav1.Time `json:"gitTimestamp,omitempty"`
RevisionTimestamp *metav1.Time `json:"revisionTimestamp,omitempty"`
DeployingStartTimestamp *metav1.Time `json:"deployingStartTimestamp,omitempty"`
CanaryStartTimestamp *metav1.Time `json:"canaryStartTimestamp,omitempty"`
PendingReleaseStartTimestamp *metav1.Time `json:"pendingReleaseStartTimestamp,omitempty"`
ReleaseStartTimestamp *metav1.Time `json:"releaseStartTimestamp,omitempty"`
TTL int64 `json:"ttl,omitempty"`
Metrics ReleaseManagerRevisionMetricsStatus `json:"metrics,omitempty"`
Scale ReleaseManagerRevisionScaleStatus `json:"scale"`
Deleted bool `json:"deleted,omitempty"`
}
func (*ReleaseManagerRevisionStatus) DeepCopy ¶
func (in *ReleaseManagerRevisionStatus) DeepCopy() *ReleaseManagerRevisionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerRevisionStatus.
func (*ReleaseManagerRevisionStatus) DeepCopyInto ¶
func (in *ReleaseManagerRevisionStatus) DeepCopyInto(out *ReleaseManagerRevisionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseManagerSpec ¶
type ReleaseManagerSpec struct {
Fleet string `json:"fleet"`
App string `json:"app"`
Target string `json:"target"`
// +listType=atomic
Variants []Variant `json:"variants,omitempty"`
}
ReleaseManagerSpec defines the desired state of ReleaseManager +k8s:openapi-gen=true
func (*ReleaseManagerSpec) DeepCopy ¶
func (in *ReleaseManagerSpec) DeepCopy() *ReleaseManagerSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerSpec.
func (*ReleaseManagerSpec) DeepCopyInto ¶
func (in *ReleaseManagerSpec) DeepCopyInto(out *ReleaseManagerSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ReleaseManagerStatus ¶
type ReleaseManagerStatus struct {
// +listType=atomic
Revisions []ReleaseManagerRevisionStatus `json:"revisions,omitempty"`
LastUpdated *metav1.Time `json:"lastUpdated"`
}
ReleaseManagerStatus defines the observed state of ReleaseManager +k8s:openapi-gen=true
func (*ReleaseManagerStatus) DeepCopy ¶
func (in *ReleaseManagerStatus) DeepCopy() *ReleaseManagerStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseManagerStatus.
func (*ReleaseManagerStatus) DeepCopyInto ¶
func (in *ReleaseManagerStatus) DeepCopyInto(out *ReleaseManagerStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Retries ¶
type Retries struct {
Attempts int32 `json:"attempts,omitempty"`
PerTryTimeout *metav1.Duration `json:"perTryTimeout,omitempty"`
RetryOn *string `json:"retryOn,omitempty"`
}
func (*Retries) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Retries.
func (*Retries) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Revision ¶
type Revision struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RevisionSpec `json:"spec,omitempty"`
Status RevisionStatus `json:"status,omitempty"`
}
Revision is the Schema for the revisions API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:resource:scope=Namespaced +kubebuilder:resource:categories=all;picchu
func (*Revision) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Revision.
func (*Revision) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Revision) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Revision) GitTimestamp ¶
func (*Revision) SinceFailed ¶
type RevisionApp ¶
type RevisionApp struct {
Name string `json:"name"`
Ref string `json:"ref"`
Tag string `json:"tag"`
Image string `json:"image"`
}
func (*RevisionApp) DeepCopy ¶
func (in *RevisionApp) DeepCopy() *RevisionApp
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionApp.
func (*RevisionApp) DeepCopyInto ¶
func (in *RevisionApp) DeepCopyInto(out *RevisionApp)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RevisionList ¶
type RevisionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Revision `json:"items"`
}
RevisionList contains a list of Revision
func (*RevisionList) DeepCopy ¶
func (in *RevisionList) DeepCopy() *RevisionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionList.
func (*RevisionList) DeepCopyInto ¶
func (in *RevisionList) DeepCopyInto(out *RevisionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevisionList) DeepCopyObject ¶
func (in *RevisionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RevisionReleaseStatus ¶
type RevisionReleaseStatus struct {
CurrentPercent uint32 `json:"currentPercent"`
PeakPercent uint32 `json:"peakPercent"`
}
func (*RevisionReleaseStatus) DeepCopy ¶
func (in *RevisionReleaseStatus) DeepCopy() *RevisionReleaseStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionReleaseStatus.
func (*RevisionReleaseStatus) DeepCopyInto ¶
func (in *RevisionReleaseStatus) DeepCopyInto(out *RevisionReleaseStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RevisionScaleStatus ¶
type RevisionScaleStatus struct {
Current uint32 `json:"current"`
Desired uint32 `json:"desired"`
Peak uint32 `json:"peak"`
}
func (*RevisionScaleStatus) DeepCopy ¶
func (in *RevisionScaleStatus) DeepCopy() *RevisionScaleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionScaleStatus.
func (*RevisionScaleStatus) DeepCopyInto ¶
func (in *RevisionScaleStatus) DeepCopyInto(out *RevisionScaleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RevisionSpec ¶
type RevisionSpec struct {
App RevisionApp `json:"app"`
Targets []RevisionTarget `json:"targets"`
Failed bool `json:"failed"`
IgnoreSLOs bool `json:"ignoreSLOs,omitempty"`
CanaryWithSLIRules bool `json:"canaryWithSLIRules,omitempty"`
Sentry SentryInfo `json:"sentry,omitempty"`
TagRoutingHeader string `json:"tagRoutingHeader,omitempty"`
DisableMirroring bool `json:"disableMirroring,omitempty"`
}
RevisionSpec defines the desired state of Revision
func (*RevisionSpec) DeepCopy ¶
func (in *RevisionSpec) DeepCopy() *RevisionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionSpec.
func (*RevisionSpec) DeepCopyInto ¶
func (in *RevisionSpec) DeepCopyInto(out *RevisionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RevisionStatus ¶
type RevisionStatus struct {
Sentry SentryInfo `json:"sentry"`
Targets []RevisionTargetStatus `json:"targets"`
}
func (*RevisionStatus) AddTarget ¶
func (r *RevisionStatus) AddTarget(ts RevisionTargetStatus)
func (*RevisionStatus) DeepCopy ¶
func (in *RevisionStatus) DeepCopy() *RevisionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionStatus.
func (*RevisionStatus) DeepCopyInto ¶
func (in *RevisionStatus) DeepCopyInto(out *RevisionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevisionStatus) GetTarget ¶
func (r *RevisionStatus) GetTarget(name string) *RevisionTargetStatus
type RevisionTarget ¶
type RevisionTarget struct {
Name string `json:"name"`
Fleet string `json:"fleet"`
Scale ScaleInfo `json:"scale"`
Release ReleaseInfo `json:"release,omitempty"`
ServiceMonitors []*ServiceMonitor `json:"serviceMonitors,omitempty"`
ServiceLevelObjectives []*ServiceLevelObjective `json:"serviceLevelObjectives,omitempty"`
ServiceLevelObjectiveLabels ServiceLevelObjectiveLabels `json:"serviceLevelObjectiveLabels,omitempty"`
AcceptanceTarget bool `json:"acceptanceTarget,omitempty"`
ConfigSelector *metav1.LabelSelector `json:"configSelector,omitempty"`
AWS AWSInfo `json:"aws,omitempty"`
AlertRules []monitoringv1.Rule `json:"alertRules,omitempty"`
Sidecars []corev1.Container `json:"sidecars,omitempty"`
VolumeMounts []corev1.VolumeMount `json:"volumeMounts,omitempty"`
Volumes []corev1.Volume `json:"volumes,omitempty"`
PodAnnotations map[string]string `json:"podAnnotations,omitempty"`
ServiceAccountName string `json:"serviceAccountName,omitempty"`
Resources corev1.ResourceRequirements `json:"resources,omitempty"`
LivenessProbe *corev1.Probe `json:"livenessProbe,omitempty"`
ReadinessProbe *corev1.Probe `json:"readinessProbe,omitempty"`
Lifecycle *corev1.Lifecycle `json:"lifecycle,omitempty"`
Affinity *corev1.Affinity `json:"affinity,omitempty"`
Tolerations []corev1.Toleration `json:"tolerations,omitempty"`
ExternalTest ExternalTest `json:"externalTest,omitempty"`
Canary Canary `json:"canary,omitempty"`
DefaultIngressPorts map[string]string `json:"defaultIngressPorts,omitempty"`
Ports []PortInfo `json:"ports,omitempty"`
Env []corev1.EnvVar `json:"env,omitempty"`
Istio *Istio `json:"istio,omitempty"`
}
func (*RevisionTarget) DeepCopy ¶
func (in *RevisionTarget) DeepCopy() *RevisionTarget
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionTarget.
func (*RevisionTarget) DeepCopyInto ¶
func (in *RevisionTarget) DeepCopyInto(out *RevisionTarget)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RevisionTarget) IsCanaryPending ¶
func (r *RevisionTarget) IsCanaryPending(startTime *metav1.Time) bool
func (*RevisionTarget) IsExternalTestPending ¶
func (r *RevisionTarget) IsExternalTestPending() bool
func (*RevisionTarget) IsExternalTestSuccessful ¶
func (r *RevisionTarget) IsExternalTestSuccessful() bool
type RevisionTargetStatus ¶
type RevisionTargetStatus struct {
Name string `json:"name"`
Scale RevisionScaleStatus `json:"scale"`
Release RevisionReleaseStatus `json:"release"`
State string `json:"state,omitempty"`
}
RevisionStatus defines the observed state of Revision
func (*RevisionTargetStatus) AddReleaseManagerStatus ¶
func (r *RevisionTargetStatus) AddReleaseManagerStatus(status ReleaseManagerRevisionStatus)
func (*RevisionTargetStatus) DeepCopy ¶
func (in *RevisionTargetStatus) DeepCopy() *RevisionTargetStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RevisionTargetStatus.
func (*RevisionTargetStatus) DeepCopyInto ¶
func (in *RevisionTargetStatus) DeepCopyInto(out *RevisionTargetStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SLICanaryConfig ¶
type SLICanaryConfig struct {
Enabled bool `json:"enabled"`
AllowancePercentString string `json:"allowancePercentString,omitempty"`
AllowancePercent float64 `json:"allowancePercent,omitempty"`
FailAfter string `json:"failAfter,omitempty"`
}
func (*SLICanaryConfig) DeepCopy ¶
func (in *SLICanaryConfig) DeepCopy() *SLICanaryConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SLICanaryConfig.
func (*SLICanaryConfig) DeepCopyInto ¶
func (in *SLICanaryConfig) DeepCopyInto(out *SLICanaryConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ScaleInfo ¶
type ScaleInfo struct {
Min *int32 `json:"min,omitempty"`
Default int32 `json:"default,omitempty"`
Max int32 `json:"max,omitempty"`
MinReadySeconds int32 `json:"minReadySeconds,omitempty"`
// TargetCPUUtilizationPercentage scales based on CPU percentage
TargetCPUUtilizationPercentage *int32 `json:"targetCPUUtilizationPercentage,omitempty"`
// TargetMemoryUtilizationPercentage scales based on Memory percentage
TargetMemoryUtilizationPercentage *int32 `json:"targetMemoryUtilizationPercentage,omitempty"`
// TargetRequestsRate scales based on the specified RequestsRateMetric
TargetRequestsRate *string `json:"targetRequestsRate,omitempty"`
// RequestsRateMetric refers to a Prometheus Adapter metric. See: https://github.com/DirectXMan12/k8s-prometheus-adapter
RequestsRateMetric string `json:"requestsRateMetric,omitempty"`
// Worker specifies parameters for Worker Pod Autoscaler. See https://github.com/practo/k8s-worker-pod-autoscaler
Worker *WorkerScaleInfo `json:"worker,omitempty"`
}
func (*ScaleInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ScaleInfo.
func (*ScaleInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ScaleInfo) HasAutoscaler ¶
type SentryInfo ¶
type SentryInfo struct {
Release bool `json:"release,omitempty"`
}
func (*SentryInfo) DeepCopy ¶
func (in *SentryInfo) DeepCopy() *SentryInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SentryInfo.
func (*SentryInfo) DeepCopyInto ¶
func (in *SentryInfo) DeepCopyInto(out *SentryInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceLevelIndicator ¶ added in v0.0.3
type ServiceLevelIndicator struct {
Canary SLICanaryConfig `json:"canary,omitempty"`
TagKey string `json:"tagKey,omitempty"`
AlertAfter string `json:"alertAfter,omitempty"`
TotalQuery string `json:"totalQuery,omitempty"`
ErrorQuery string `json:"errorQuery,omitempty"`
}
func (*ServiceLevelIndicator) DeepCopy ¶ added in v0.0.3
func (in *ServiceLevelIndicator) DeepCopy() *ServiceLevelIndicator
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceLevelIndicator.
func (*ServiceLevelIndicator) DeepCopyInto ¶ added in v0.0.3
func (in *ServiceLevelIndicator) DeepCopyInto(out *ServiceLevelIndicator)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceLevelObjective ¶
type ServiceLevelObjective struct {
Name string `json:"name,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
Description string `json:"description,omitempty"`
Enabled bool `json:"enabled"`
ObjectivePercentString string `json:"objectivePercentString,omitempty"`
ServiceLevelIndicator ServiceLevelIndicator `json:"serviceLevelIndicator,omitempty"`
ServiceLevelObjectiveLabels ServiceLevelObjectiveLabels `json:"serviceLevelObjectiveLabels,omitempty"`
}
func (*ServiceLevelObjective) DeepCopy ¶
func (in *ServiceLevelObjective) DeepCopy() *ServiceLevelObjective
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceLevelObjective.
func (*ServiceLevelObjective) DeepCopyInto ¶
func (in *ServiceLevelObjective) DeepCopyInto(out *ServiceLevelObjective)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceLevelObjectiveLabels ¶
type ServiceLevelObjectiveLabels struct {
AlertLabels map[string]string `json:"alertLabels,omitempty"`
RuleLabels map[string]string `json:"ruleLabels,omitempty"`
ServiceLevelLabels map[string]string `json:"serviceLevelLabels,omitempty"`
}
func (*ServiceLevelObjectiveLabels) DeepCopy ¶
func (in *ServiceLevelObjectiveLabels) DeepCopy() *ServiceLevelObjectiveLabels
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceLevelObjectiveLabels.
func (*ServiceLevelObjectiveLabels) DeepCopyInto ¶
func (in *ServiceLevelObjectiveLabels) DeepCopyInto(out *ServiceLevelObjectiveLabels)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceMonitor ¶
type ServiceMonitor struct {
Name string `json:"name"`
// if true, and the Spec.Endpoints.MetricRelabelConfigs does not specify a regex, will replace the regex with a list of SLO metric names
SLORegex bool `json:"sloRegex"`
Annotations map[string]string `json:"annotations,omitempty"`
Labels map[string]string `json:"labels,omitempty"`
Spec monitoringv1.ServiceMonitorSpec `json:"spec,omitempty"`
}
func (*ServiceMonitor) DeepCopy ¶
func (in *ServiceMonitor) DeepCopy() *ServiceMonitor
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceMonitor.
func (*ServiceMonitor) DeepCopyInto ¶
func (in *ServiceMonitor) DeepCopyInto(out *ServiceMonitor)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Variant ¶
func (*Variant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Variant.
func (*Variant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkerScaleInfo ¶
type WorkerScaleInfo struct {
QueueURI string `json:"queueUri"`
TargetMessagesPerWorker *int32 `json:"targetMessagesPerWorker"`
SecondsToProcessOneJobString *string `json:"secondsToProcessOneJobString,omitempty"` // optional
MaxDisruption *string `json:"maxDisruption"` // optional
}
func (*WorkerScaleInfo) DeepCopy ¶
func (in *WorkerScaleInfo) DeepCopy() *WorkerScaleInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkerScaleInfo.
func (*WorkerScaleInfo) DeepCopyInto ¶
func (in *WorkerScaleInfo) DeepCopyInto(out *WorkerScaleInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.