Documentation ¶
Overview ¶
Copyright 2021 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Package v1 contains API Schema definitions for the apps v1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:defaulter-gen=TypeMet +groupName=apps.open-cluster-management.io
Package v1 contains API Schema definitions for the apps v1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:defaulter-gen=TypeMeta +groupName=apps.open-cluster-management.io
Index ¶
Constants ¶
const ( // ChannelTypeNamespace represents the type of namespace channel ChannelTypeNamespace = "namespace" // ChannelTypeHelmRepo represents the type of helm repository channel ChannelTypeHelmRepo = "helmrepo" // ChannelTypeObjectBucket represents the type of object store channel ChannelTypeObjectBucket = "objectbucket" // ChannelTypeGitHub represents the type of GitHub repository channel ChannelTypeGitHub = "github" // ChannelTypeGit represents the type of GitHub repository channel ChannelTypeGit = "git" // TLS minimum version as integer TLSMinVersionInt = tls.VersionTLS12 // TLS minimum version as a string TLSMinVersionString = "1.2" )
Variables ¶
var ( // KeyChannelSource is the namespaced name of a Deployable from which // a child resource (deployable) is created by a channel. KeyChannelSource = SchemeGroupVersion.Group + "/hosting-deployable" // KeyChannel is namespacedname tells the source of the channel KeyChannel = SchemeGroupVersion.Group + "/channel" // KeyChannelType is the type of the source of the channel KeyChannelType = SchemeGroupVersion.Group + "/channel-type" // KeyChannelPath is the filter reference path of GitHub type channel KeyChannelPath = SchemeGroupVersion.Group + "/channel-path" // ServingChannel indicates the channel that the secrect or configMap // reference. ServingChannel = SchemeGroupVersion.Group + "/serving-channel" )
EDIT THIS FILE! THIS IS SCAFFOLDING FOR YOU TO OWN! NOTE: json tags are required. Any new fields you add must have json tags for the fields to be serialized.
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: apiGroup, Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} // AddToScheme is required by pkg/client/... AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource is required by pkg/client/listers/...
Types ¶
type Channel ¶
type Channel struct { // The most recent observed status of the Channel. Status ChannelStatus `json:"status,omitempty"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ChannelSpec `json:"spec"` // Specification for the Channel. metav1.TypeMeta `json:",inline"` }
Channel provides a repository containing application resources which can be deployed to clusters by subscriptions. The following 3 types of channels are supported: Git repository, Helm release registry, and Object storage repository. +k8s:openapi-gen=true +kubebuilder:printcolumn:name="Type",type="string",JSONPath=".spec.type",description="type of the channel" +kubebuilder:printcolumn:name="Pathname",type="string",JSONPath=".spec.pathname",description="pathname of the channel" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Namespaced
func (*Channel) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Channel.
func (*Channel) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Channel) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChannelGate ¶
type ChannelGate struct { Name string `json:"name,omitempty"` // A label selector for selecting the Deployables. LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"` // The annotations for selecting the Deployables to be eligible for promotion. Annotations map[string]string `json:"annotations,omitempty"` }
ChannelGate defines a criteria for promoting a Deployable from the sourceNamespaces to Channel.
func (*ChannelGate) DeepCopy ¶
func (in *ChannelGate) DeepCopy() *ChannelGate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelGate.
func (*ChannelGate) DeepCopyInto ¶
func (in *ChannelGate) DeepCopyInto(out *ChannelGate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChannelList ¶
type ChannelList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // A list of Channel objects. // +listType=set Items []Channel `json:"items"` }
ChannelList provides a list of channels
func (*ChannelList) DeepCopy ¶
func (in *ChannelList) DeepCopy() *ChannelList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelList.
func (*ChannelList) DeepCopyInto ¶
func (in *ChannelList) DeepCopyInto(out *ChannelList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ChannelList) DeepCopyObject ¶
func (in *ChannelList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ChannelSpec ¶
type ChannelSpec struct { // +kubebuilder:validation:Enum={Namespace,HelmRepo,ObjectBucket,GitHub,Git,namespace,helmrepo,objectbucket,github,git} Type ChannelType `json:"type"` // For a `helmrepo` or `github` channel, pathname is the repo URL. // For a `objectbucket` channel, pathname is the Object store URL with the name of the bucket. Pathname string `json:"pathname"` // Skip server TLS certificate verification for Git or Helm channel. InsecureSkipVerify bool `json:"insecureSkipVerify,omitempty"` // For a `github` channel or a `helmrepo` channel on github, // use this to reference a secret which contains the credentials for authentication, for example: `user` and `accessToken`. // For a `objectbucket` channel, // use this to reference a secret which contains the AWS credentials, for example: `AccessKeyID`,`SecretAccessKey` and `Region`. // +optional SecretRef *corev1.ObjectReference `json:"secretRef,omitempty"` // Reference to a ConfigMap which contains additional settings for accessing the channel. // For example, the `insecureSkipVerify` option for accessing HTTPS endpoints can be set in the ConfigMap to indicate a insecure connection. ConfigMapRef *corev1.ObjectReference `json:"configMapRef,omitempty"` // +optional Gates *ChannelGate `json:"gates,omitempty"` // A list of namespace names from which Deployables can be promoted. // +optional // +listType=set SourceNamespaces []string `json:"sourceNamespaces,omitempty"` }
ChannelSpec defines the desired state of Channel
func (*ChannelSpec) DeepCopy ¶
func (in *ChannelSpec) DeepCopy() *ChannelSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelSpec.
func (*ChannelSpec) DeepCopyInto ¶
func (in *ChannelSpec) DeepCopyInto(out *ChannelSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ChannelStatus ¶
type ChannelStatus struct { }
ChannelStatus defines the observed state of Channel
func (*ChannelStatus) DeepCopy ¶
func (in *ChannelStatus) DeepCopy() *ChannelStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ChannelStatus.
func (*ChannelStatus) DeepCopyInto ¶
func (in *ChannelStatus) DeepCopyInto(out *ChannelStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.