Documentation
¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group.
Index ¶
- Variables
- func Resource(resource string) schema.GroupResource
- type Artifact
- type Component
- func (in *Component) DeepCopy() *Component
- func (in *Component) DeepCopyInto(out *Component)
- func (in *Component) DeepCopyObject() runtime.Object
- func (c *Component) GetEventAnnotations(componentDigest string) map[string]string
- func (c *Component) GetSpec() componentoperatorruntimetypes.Unstructurable
- func (c *Component) GetStatus() *component.Status
- func (c *Component) IsReady() bool
- func (c *Component) NamespacedName() apitypes.NamespacedName
- type ComponentList
- type ComponentSpec
- type ComponentStatus
- type Decryption
- type Dependency
- type FluxBucket
- type FluxGitRepository
- type FluxHelmChart
- type FluxOciRepository
- type HttpRepository
- type NamespacedName
- type PostBuild
- type SourceReference
- func (r *SourceReference) Artifact() Artifact
- func (in *SourceReference) DeepCopy() *SourceReference
- func (in *SourceReference) DeepCopyInto(out *SourceReference)
- func (r *SourceReference) Digest() string
- func (r *SourceReference) Equals(s *SourceReference) bool
- func (r *SourceReference) Load(ctx context.Context, clnt client.Client, component *Component) error
- type SourceReferenceStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "core.cs.sap.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme // Needed by kubernetes/code-generator. SchemeGroupVersion = GroupVersion )
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Needed by kubernetes/code-generator.
Types ¶
type Artifact ¶ added in v0.1.25
type Artifact struct { Url string `json:"url"` Digest string `json:"digest"` Revision string `json:"revision"` }
Artifact describes the underlying source artifact.
func (*Artifact) DeepCopy ¶ added in v0.1.25
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Artifact.
func (*Artifact) DeepCopyInto ¶ added in v0.1.25
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Component ¶
type Component struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ComponentSpec `json:"spec,omitempty"` // +kubebuilder:default={"observedGeneration":-1} Status ComponentStatus `json:"status,omitempty"` }
Component is the Schema for the components API.
func (*Component) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Component.
func (*Component) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Component) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Component) GetEventAnnotations ¶ added in v0.1.22
Provide event metadata note: by implementing this method, component-operator-runtime will attach the returned annotations when calling EventRecorder.AnnotatedEventf(); also note that this controller wraps the standard event recorder with the flux notification recorder; this one expects annotation keys to be prefixed with the API group of the involved object ...
func (*Component) GetSpec ¶
func (c *Component) GetSpec() componentoperatorruntimetypes.Unstructurable
Implement the component-operator-runtime Component interface.
func (*Component) NamespacedName ¶
func (c *Component) NamespacedName() apitypes.NamespacedName
Get the object key (namespace and name) of the component.
type ComponentList ¶
type ComponentList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Component `json:"items"` }
ComponentList contains a list of Component.
func (*ComponentList) DeepCopy ¶
func (in *ComponentList) DeepCopy() *ComponentList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentList.
func (*ComponentList) DeepCopyInto ¶
func (in *ComponentList) DeepCopyInto(out *ComponentList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ComponentList) DeepCopyObject ¶
func (in *ComponentList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ComponentSpec ¶
type ComponentSpec struct { component.PlacementSpec `json:",inline"` component.ClientSpec `json:",inline"` component.ImpersonationSpec `json:",inline"` component.RequeueSpec `json:",inline"` component.RetrySpec `json:",inline"` component.TimeoutSpec `json:",inline"` component.PolicySpec `json:",inline"` component.TypeSpec `json:",inline"` component.ReapplySpec `json:",inline"` // +required SourceRef SourceReference `json:"sourceRef"` Digest string `json:"digest,omitempty"` Revision string `json:"revision,omitempty"` Sticky bool `json:"sticky,omitempty"` Path string `json:"path,omitempty"` Values *apiextensionsv1.JSON `json:"values,omitempty"` ValuesFrom []component.SecretKeyReference `json:"valuesFrom,omitempty" fallbackKeys:"values,values.yaml,values.yml" notFoundPolicy:"ignoreOnDeletion"` Decryption *Decryption `json:"decryption,omitempty"` PostBuild *PostBuild `json:"postBuild,omitempty"` Dependencies []Dependency `json:"dependencies,omitempty"` }
ComponentSpec defines the desired state of Component.
func (*ComponentSpec) DeepCopy ¶
func (in *ComponentSpec) DeepCopy() *ComponentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentSpec.
func (*ComponentSpec) DeepCopyInto ¶
func (in *ComponentSpec) DeepCopyInto(out *ComponentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ComponentSpec) ToUnstructured ¶
func (s *ComponentSpec) ToUnstructured() map[string]any
Implement the component-operator-runtime Component interface.
type ComponentStatus ¶
type ComponentStatus struct { component.Status `json:",inline"` SourceRef *SourceReferenceStatus `json:"sourceRef,omitempty"` LastAttemptedDigest string `json:"lastAttemptedDigest,omitempty"` LastAttemptedRevision string `json:"lastAttemptedRevision,omitempty"` LastAppliedDigest string `json:"lastAppliedDigest,omitempty"` LastAppliedRevision string `json:"lastAppliedRevision,omitempty"` }
ComponentStatus defines the observed state of Component.
func (*ComponentStatus) DeepCopy ¶
func (in *ComponentStatus) DeepCopy() *ComponentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ComponentStatus.
func (*ComponentStatus) DeepCopyInto ¶
func (in *ComponentStatus) DeepCopyInto(out *ComponentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Decryption ¶
type Decryption struct { // Decryption provider. Currently, the only supported value is 'sops', which is the default if the // field is omitted. Provider string `json:"provider,omitempty"` // Reference to a secret containing the provider configuration. The structure of the secret is the same // as the one used in flux Kustomization. SecretRef component.SecretReference `json:"secretRef" notFoundPolicy:"ignoreOnDeletion"` }
Decryption settings.
func (*Decryption) DeepCopy ¶
func (in *Decryption) DeepCopy() *Decryption
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Decryption.
func (*Decryption) DeepCopyInto ¶
func (in *Decryption) DeepCopyInto(out *Decryption)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Dependency ¶
type Dependency struct {
NamespacedName `json:",inline"`
}
Dependency models a dependency of the containing component to another Component (referenced by namespace and name).
func (*Dependency) DeepCopy ¶
func (in *Dependency) DeepCopy() *Dependency
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dependency.
func (*Dependency) DeepCopyInto ¶
func (in *Dependency) DeepCopyInto(out *Dependency)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluxBucket ¶
type FluxBucket struct {
NamespacedName `json:",inline"`
}
Reference to a flux Bucket.
func (*FluxBucket) DeepCopy ¶
func (in *FluxBucket) DeepCopy() *FluxBucket
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxBucket.
func (*FluxBucket) DeepCopyInto ¶
func (in *FluxBucket) DeepCopyInto(out *FluxBucket)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluxGitRepository ¶
type FluxGitRepository struct {
NamespacedName `json:",inline"`
}
Reference to a flux GitRepository.
func (*FluxGitRepository) DeepCopy ¶
func (in *FluxGitRepository) DeepCopy() *FluxGitRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxGitRepository.
func (*FluxGitRepository) DeepCopyInto ¶
func (in *FluxGitRepository) DeepCopyInto(out *FluxGitRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluxHelmChart ¶
type FluxHelmChart struct {
NamespacedName `json:",inline"`
}
Reference to a flux HelmChart.
func (*FluxHelmChart) DeepCopy ¶
func (in *FluxHelmChart) DeepCopy() *FluxHelmChart
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxHelmChart.
func (*FluxHelmChart) DeepCopyInto ¶
func (in *FluxHelmChart) DeepCopyInto(out *FluxHelmChart)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FluxOciRepository ¶
type FluxOciRepository struct {
NamespacedName `json:",inline"`
}
Reference to a flux OCIRepository.
func (*FluxOciRepository) DeepCopy ¶
func (in *FluxOciRepository) DeepCopy() *FluxOciRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxOciRepository.
func (*FluxOciRepository) DeepCopyInto ¶
func (in *FluxOciRepository) DeepCopyInto(out *FluxOciRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HttpRepository ¶ added in v0.1.10
type HttpRepository struct { // URL of the source. Authentication is currently not supported. The operator will make HEAD requests to retrieve the digest/revision // and a potentially redirected actual location of the source artifact. Redirects will be followed as long as the response does not // contain the specified digest header. Url string `json:"url,omitempty"` // Name of the header containing the digest of the source artifact. The returned header value can be any format, but must uniquely identify the // content of the source artifact. Defaults to the ETag header. DigestHeader string `json:"digestHeader,omitempty"` // Name of the header containing the revision of the source artifact. The returned header value can be any format. // Defaults to the header specified in DigestHeader. RevisionHeader string `json:"revisionHeader,omitempty"` }
Reference to a generic http repository.
func (*HttpRepository) DeepCopy ¶ added in v0.1.10
func (in *HttpRepository) DeepCopy() *HttpRepository
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HttpRepository.
func (*HttpRepository) DeepCopyInto ¶ added in v0.1.10
func (in *HttpRepository) DeepCopyInto(out *HttpRepository)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespacedName ¶
type NamespacedName struct { Namespace string `json:"namespace,omitempty"` // +required Name string `json:"name"` }
A tuple of namespace and name.
func (*NamespacedName) DeepCopy ¶
func (in *NamespacedName) DeepCopy() *NamespacedName
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespacedName.
func (*NamespacedName) DeepCopyInto ¶
func (in *NamespacedName) DeepCopyInto(out *NamespacedName)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (NamespacedName) String ¶
func (n NamespacedName) String() string
Return a beautified string representation of the NamespacedName.
func (NamespacedName) WithDefaultNamespace ¶
func (n NamespacedName) WithDefaultNamespace(namespace string) NamespacedName
Return a copy of the given NamespacedName, using the specified namespace if none is set. The retrieving NamespaceName remains unchanged.
type PostBuild ¶
type PostBuild struct { // Variables to be substituted in the renderered manifests. Substitute map[string]string `json:"substitute,omitempty"` // Secrets containing variables to be used for substitution. SubstituteFrom []component.SecretReference `json:"substituteFrom,omitempty" notFoundPolicy:"ignoreOnDeletion"` }
Post-build settings. The rendered manifests may contain patterns as defined by https://github.com/drone/envsubst. The according variables can provided inline by Substitute or as secrets by SubstituteFrom. If a variable name appears in more than one secret, then later values have precedence, and inline values have precedence over those defined through secrets.
func (*PostBuild) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PostBuild.
func (*PostBuild) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SourceReference ¶
type SourceReference struct { HttpRepository *HttpRepository `json:"httpRepository,omitempty"` FluxGitRepository *FluxGitRepository `json:"fluxGitRepository,omitempty"` FluxOciRepository *FluxOciRepository `json:"fluxOciRepository,omitempty"` FluxBucket *FluxBucket `json:"fluxBucket,omitempty"` FluxHelmChart *FluxHelmChart `json:"fluxHelmChart,omitempty"` // contains filtered or unexported fields }
SourceReference models the source of the templates used to render the dependent resources. Exactly one of the options must be provided. Before accessing the Artifact() method, the SourceReference must be loaded by calling Load().
func (*SourceReference) Artifact ¶ added in v0.1.25
func (r *SourceReference) Artifact() Artifact
Get the artifact of a loaded source reference. Calling Artifact() on a not-loaded source reference will panic.
func (*SourceReference) DeepCopy ¶
func (in *SourceReference) DeepCopy() *SourceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceReference.
func (*SourceReference) DeepCopyInto ¶
func (in *SourceReference) DeepCopyInto(out *SourceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*SourceReference) Digest ¶ added in v0.1.12
func (r *SourceReference) Digest() string
Implement the component.Reference interface.
func (*SourceReference) Equals ¶
func (r *SourceReference) Equals(s *SourceReference) bool
Check if source reference equals other given source reference.
type SourceReferenceStatus ¶ added in v0.1.25
type SourceReferenceStatus struct { Artifact Artifact `json:"artifact,omitempty"` Digest string `json:"digest,omitempty"` }
func (*SourceReferenceStatus) DeepCopy ¶ added in v0.1.25
func (in *SourceReferenceStatus) DeepCopy() *SourceReferenceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SourceReferenceStatus.
func (*SourceReferenceStatus) DeepCopyInto ¶ added in v0.1.25
func (in *SourceReferenceStatus) DeepCopyInto(out *SourceReferenceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.