v1alpha1

package
v0.0.0-...-929fd92 Latest Latest
Warning

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

Go to latest
Published: Apr 14, 2025 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the promotion v1alpha1 API group. +kubebuilder:object:generate=true +groupName=promotion.kuberik.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "promotion.kuberik.io", 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
)

Functions

This section is empty.

Types

type ReleasePromotion

type ReleasePromotion struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ReleasePromotionSpec   `json:"spec,omitempty"`
	Status ReleasePromotionStatus `json:"status,omitempty"`
}

ReleasePromotion is the Schema for the releasepromotions API.

func (*ReleasePromotion) DeepCopy

func (in *ReleasePromotion) DeepCopy() *ReleasePromotion

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

func (*ReleasePromotion) DeepCopyInto

func (in *ReleasePromotion) DeepCopyInto(out *ReleasePromotion)

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

func (*ReleasePromotion) DeepCopyObject

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

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

type ReleasePromotionList

type ReleasePromotionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ReleasePromotion `json:"items"`
}

ReleasePromotionList contains a list of ReleasePromotion.

func (*ReleasePromotionList) DeepCopy

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

func (*ReleasePromotionList) DeepCopyInto

func (in *ReleasePromotionList) DeepCopyInto(out *ReleasePromotionList)

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

func (*ReleasePromotionList) DeepCopyObject

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

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

type ReleasePromotionSpec

type ReleasePromotionSpec struct {
	// Protocol defines the type of repository protocol to use (e.g. oci, s3)
	// +kubebuilder:validation:Enum=oci;s3
	// +kubebuilder:default=oci
	Protocol string `json:"protocol,omitempty"`

	// ReleasesRepository specifies the path to the releases repository
	// +kubebuilder:validation:Required
	// +required
	ReleasesRepository Repository `json:"releasesRepository,omitempty"`

	// TargetRepository specifies the path where releases should be promoted to
	// +kubebuilder:validation:Required
	// +required
	TargetRepository Repository `json:"targetRepository,omitempty"`
}

ReleasePromotionSpec defines the desired state of ReleasePromotion.

func (*ReleasePromotionSpec) DeepCopy

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

func (*ReleasePromotionSpec) DeepCopyInto

func (in *ReleasePromotionSpec) DeepCopyInto(out *ReleasePromotionSpec)

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

type ReleasePromotionStatus

type ReleasePromotionStatus struct {

	// Conditions represents the current state of the release promotion process.
	// +optional
	// +patchMergeKey=type
	// +patchStrategy=merge
	// +listType=map
	// +listMapKey=type
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ReleasePromotionStatus defines the observed state of ReleasePromotion.

func (*ReleasePromotionStatus) DeepCopy

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

func (*ReleasePromotionStatus) DeepCopyInto

func (in *ReleasePromotionStatus) DeepCopyInto(out *ReleasePromotionStatus)

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

type ReleaseRepository

type ReleaseRepository struct {
	// TODO: document and add examples
	// oci://my-registry.my-domain/kuberik/system
	// s3://my-bucket-n41nkl1n4/kuberik/system
	// +kubebuilder:validation:Pattern="^(oci|s3):\\/\\/.+$"
	// +optional
	Url string `json:"baseUrl,omitempty"`

	// The secret name containing the authentication credentials
	// +optional
	SecretRef *corev1.LocalObjectReference `json:"secretRef,omitempty"`
}

func (*ReleaseRepository) DeepCopy

func (in *ReleaseRepository) DeepCopy() *ReleaseRepository

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

func (*ReleaseRepository) DeepCopyInto

func (in *ReleaseRepository) DeepCopyInto(out *ReleaseRepository)

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

type Repository

type Repository struct {
	// The URL of the repository
	// +kubebuilder:validation:Required
	// +required
	URL string `json:"url,omitempty"`

	// The secret name containing the authentication credentials
	// +optional
	Auth *corev1.LocalObjectReference `json:"secretRef,omitempty"`
}

func (*Repository) DeepCopy

func (in *Repository) DeepCopy() *Repository

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

func (*Repository) DeepCopyInto

func (in *Repository) DeepCopyInto(out *Repository)

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

Jump to

Keyboard shortcuts

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