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.