v1alpha1

package
v0.1.14 Latest Latest
Warning

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

Go to latest
Published: Dec 19, 2024 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group.

Index

Constants

This section is empty.

Variables

View Source
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 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

func (in *Component) DeepCopy() *Component

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

func (*Component) DeepCopyInto

func (in *Component) DeepCopyInto(out *Component)

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

func (*Component) DeepCopyObject

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

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

func (*Component) GetSpec

Implement the component-operator-runtime Component interface.

func (*Component) GetStatus

func (c *Component) GetStatus() *component.Status

Implement the component-operator-runtime Component interface.

func (*Component) IsReady

func (c *Component) IsReady() bool

Reports the readiness of the component.

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.RequeueSpec   `json:",inline"`
	component.RetrySpec     `json:",inline"`
	component.TimeoutSpec   `json:",inline"`
	component.PolicySpec    `json:",inline"`
	// +required
	SourceRef    SourceReference                `json:"sourceRef"`
	Digest       string                         `json:"digest,omitempty"`
	Revision     string                         `json:"revision,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"`
	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

func (in *PostBuild) DeepCopy() *PostBuild

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

func (*PostBuild) DeepCopyInto

func (in *PostBuild) DeepCopyInto(out *PostBuild)

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 Url(), Digest() or Revision() methods, a SourceReference must be loaded by calling Init().

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

Get the digest of a loaded source reference. Calling Digest() on a not-loaded source reference will panic. The returned digest uniquely identifies the content of the referenced archive.

func (*SourceReference) Equals

func (r *SourceReference) Equals(s *SourceReference) bool

Check if source reference equals other given source reference.

func (*SourceReference) Init added in v0.1.2

func (r *SourceReference) Init(url string, digest string, revision string)

Initialize source reference. This is meant to be called by the reconciler. Other consumers should probably not (need to) call this.

func (*SourceReference) Revision

func (r *SourceReference) Revision() string

Get the revision of a loaded source reference. Calling Revision() on a not-loaded source reference will panic. The returned revision is often but not always unique for the referenced archive (usually a Git SHA or hash or digest).

func (*SourceReference) Url

func (r *SourceReference) Url() string

Get the URL of a loaded source reference. Calling Url() on a not-loaded source reference will panic. The returned URL can be used to download a gzipped tar archive containing the templates. Furthermore, the URL will be unique for the archive's content.

Jump to

Keyboard shortcuts

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