v1alpha1

package
v0.0.0-...-0837126 Latest Latest
Warning

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

Go to latest
Published: May 7, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the appstudio v1alpha1 API group +kubebuilder:object:generate=true +groupName=appstudio.redhat.com

Index

Constants

View Source
const (
	// FailedReason is the reason set when a failure occurs
	FailedReason conditions.ConditionReason = "Failed"

	// ProgressingReason is the reason set when an action is progressing
	ProgressingReason conditions.ConditionReason = "Progressing"

	// SucceededReason is the reason set when an action succeeds
	SucceededReason conditions.ConditionReason = "Succeeded"
)
View Source
const (
	// matchedConditionType is the type used to track the status of the ReleasePlan being matched to a
	// ReleasePlanAdmission or vice versa
	MatchedConditionType conditions.ConditionType = "Matched"
)
View Source
const (
	// MatchedReason is the reason set when a resource is matched
	MatchedReason conditions.ConditionReason = "Matched"
)
View Source
const ReleaseServiceConfigResourceName string = "release-service-config"

Variables

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

Functions

This section is empty.

Types

type AttributionInfo

type AttributionInfo struct {
	// Author is the username that the release is attributed to
	// +optional
	Author string `json:"author,omitempty"`

	// StandingAuthorization indicates whether the release is attributed through a ReleasePlan
	// +optional
	StandingAuthorization bool `json:"standingAuthorization,omitempty"`
}

AttributionInfo defines the observed state of the release attribution.

func (*AttributionInfo) DeepCopy

func (in *AttributionInfo) DeepCopy() *AttributionInfo

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

func (*AttributionInfo) DeepCopyInto

func (in *AttributionInfo) DeepCopyInto(out *AttributionInfo)

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

type MatchedReleasePlan

type MatchedReleasePlan struct {
	// Name contains the namespaced name of the ReleasePlan
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?\/[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	Name string `json:"name,omitempty"`

	// Active indicates whether the ReleasePlan is set to auto-release or not
	// +kubebuilder:default:false
	// +optional
	Active bool `json:"active,omitempty"`
}

MatchedReleasePlan defines the relevant information for a matched ReleasePlan.

func (*MatchedReleasePlan) DeepCopy

func (in *MatchedReleasePlan) DeepCopy() *MatchedReleasePlan

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

func (*MatchedReleasePlan) DeepCopyInto

func (in *MatchedReleasePlan) DeepCopyInto(out *MatchedReleasePlan)

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

type MatchedReleasePlanAdmission

type MatchedReleasePlanAdmission struct {
	// Name contains the namespaced name of the releasePlanAdmission
	// +optional
	Name string `json:"name,omitempty"`

	// Active indicates whether the ReleasePlanAdmission is set to auto-release or not
	// +kubebuilder:default:false
	// +optional
	Active bool `json:"active,omitempty"`
}

MatchedReleasePlanAdmission defines the relevant information for a matched ReleasePlanAdmission.

func (*MatchedReleasePlanAdmission) DeepCopy

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

func (*MatchedReleasePlanAdmission) DeepCopyInto

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

type PostActionsExecutionInfo

type PostActionsExecutionInfo struct {
	// CompletionTime is the time when the Release post-actions execution was completed
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// StartTime is the time when the Release post-actions execution started
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`
}

PostActionsExecutionInfo defines the observed state of the post-actions execution.

func (*PostActionsExecutionInfo) DeepCopy

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

func (*PostActionsExecutionInfo) DeepCopyInto

func (in *PostActionsExecutionInfo) DeepCopyInto(out *PostActionsExecutionInfo)

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

type ProcessingInfo

type ProcessingInfo struct {
	// CompletionTime is the time when the Release processing was completed
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// PipelineRun contains the namespaced name of the managed Release PipelineRun executed as part of this release
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?\/[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	PipelineRun string `json:"pipelineRun,omitempty"`

	// RoleBinding contains the namespaced name of the roleBinding created for the managed Release PipelineRun
	// executed as part of this release
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?\/[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	RoleBinding string `json:"roleBinding,omitempty"`

	// StartTime is the time when the Release processing started
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`
}

ProcessingInfo defines the observed state of the release processing.

func (*ProcessingInfo) DeepCopy

func (in *ProcessingInfo) DeepCopy() *ProcessingInfo

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

func (*ProcessingInfo) DeepCopyInto

func (in *ProcessingInfo) DeepCopyInto(out *ProcessingInfo)

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

type Release

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

	Spec   ReleaseSpec   `json:"spec,omitempty"`
	Status ReleaseStatus `json:"status,omitempty"`
}

Release is the Schema for the releases API

func (*Release) DeepCopy

func (in *Release) DeepCopy() *Release

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

func (*Release) DeepCopyInto

func (in *Release) DeepCopyInto(out *Release)

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

func (*Release) DeepCopyObject

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

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

func (*Release) HasEveryPostActionExecutionFinished

func (r *Release) HasEveryPostActionExecutionFinished() bool

HasEveryPostActionExecutionFinished checks whether the Release post-actions execution has finished, regardless of the result.

func (*Release) HasProcessingFinished

func (r *Release) HasProcessingFinished() bool

HasProcessingFinished checks whether the Release processing has finished, regardless of the result.

func (*Release) HasReleaseFinished

func (r *Release) HasReleaseFinished() bool

HasReleaseFinished checks whether the Release has finished, regardless of the result.

func (*Release) IsAttributed

func (r *Release) IsAttributed() bool

IsAttributed checks whether the Release was marked as attributed.

func (*Release) IsAutomated

func (r *Release) IsAutomated() bool

IsAutomated checks whether the Release was marked as automated.

func (*Release) IsEachPostActionExecuting

func (r *Release) IsEachPostActionExecuting() bool

IsEachPostActionExecuting checks whether the Release post-actions are in progress.

func (*Release) IsEveryPostActionExecuted

func (r *Release) IsEveryPostActionExecuted() bool

IsEveryPostActionExecuted checks whether the Release post-actions were successfully executed.

func (*Release) IsProcessed

func (r *Release) IsProcessed() bool

IsProcessed checks whether the Release was successfully processed.

func (*Release) IsProcessing

func (r *Release) IsProcessing() bool

IsProcessing checks whether the Release processing is in progress.

func (*Release) IsReleased

func (r *Release) IsReleased() bool

IsReleased checks whether the Release has finished successfully.

func (*Release) IsReleasing

func (r *Release) IsReleasing() bool

IsReleasing checks whether the Release is in progress.

func (*Release) IsValid

func (r *Release) IsValid() bool

IsValid checks whether the Release validation has finished successfully.

func (*Release) MarkPostActionsExecuted

func (r *Release) MarkPostActionsExecuted()

MarkPostActionsExecuted marks the Release post-actions as executed.

func (*Release) MarkPostActionsExecuting

func (r *Release) MarkPostActionsExecuting(message string)

MarkPostActionsExecuting marks the Release post-actions as executing.

func (*Release) MarkPostActionsExecutionFailed

func (r *Release) MarkPostActionsExecutionFailed(message string)

MarkPostActionsExecutionFailed marks the Release post-actions execution as failed.

func (*Release) MarkProcessed

func (r *Release) MarkProcessed()

MarkProcessed marks the Release as processed.

func (*Release) MarkProcessing

func (r *Release) MarkProcessing(message string)

MarkProcessing marks the Release as processing.

func (*Release) MarkProcessingFailed

func (r *Release) MarkProcessingFailed(message string)

MarkProcessingFailed marks the Release processing as failed.

func (*Release) MarkReleaseFailed

func (r *Release) MarkReleaseFailed(message string)

MarkReleaseFailed marks the Release as failed.

func (*Release) MarkReleased

func (r *Release) MarkReleased()

MarkReleased marks the Release as released.

func (*Release) MarkReleasing

func (r *Release) MarkReleasing(message string)

MarkReleasing marks the Release as releasing.

func (*Release) MarkValidated

func (r *Release) MarkValidated()

MarkValidated marks the Release as validated.

func (*Release) MarkValidationFailed

func (r *Release) MarkValidationFailed(message string)

MarkValidationFailed marks the Release validation as failed.

func (*Release) SetAutomated

func (r *Release) SetAutomated()

SetAutomated marks the Release as automated.

func (*Release) SetExpirationTime

func (r *Release) SetExpirationTime(expireDays time.Duration)

SetExpirationTime set the time when this release can be purged

type ReleaseList

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

ReleaseList contains a list of Release

func (*ReleaseList) DeepCopy

func (in *ReleaseList) DeepCopy() *ReleaseList

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

func (*ReleaseList) DeepCopyInto

func (in *ReleaseList) DeepCopyInto(out *ReleaseList)

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

func (*ReleaseList) DeepCopyObject

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

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

type ReleasePlan

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

	Spec   ReleasePlanSpec   `json:"spec,omitempty"`
	Status ReleasePlanStatus `json:"status,omitempty"`
}

ReleasePlan is the Schema for the ReleasePlans API.

func (*ReleasePlan) DeepCopy

func (in *ReleasePlan) DeepCopy() *ReleasePlan

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

func (*ReleasePlan) DeepCopyInto

func (in *ReleasePlan) DeepCopyInto(out *ReleasePlan)

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

func (*ReleasePlan) DeepCopyObject

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

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

func (*ReleasePlan) MarkMatched

func (rp *ReleasePlan) MarkMatched(releasePlanAdmission *ReleasePlanAdmission)

MarkMatched marks the ReleasePlan as matched to a given ReleasePlanAdmission.

func (*ReleasePlan) MarkUnmatched

func (rp *ReleasePlan) MarkUnmatched()

MarkUnmatched marks the ReleasePlan as not matched to any ReleasePlanAdmission.

type ReleasePlanAdmission

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

	Spec   ReleasePlanAdmissionSpec   `json:"spec,omitempty"`
	Status ReleasePlanAdmissionStatus `json:"status,omitempty"`
}

ReleasePlanAdmission is the Schema for the ReleasePlanAdmissions API.

func (*ReleasePlanAdmission) ClearMatchingInfo

func (rpa *ReleasePlanAdmission) ClearMatchingInfo()

ClearMatchingInfo marks the ReleasePlanAdmission as no longer matched to any ReleasePlan.

func (*ReleasePlanAdmission) DeepCopy

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

func (*ReleasePlanAdmission) DeepCopyInto

func (in *ReleasePlanAdmission) DeepCopyInto(out *ReleasePlanAdmission)

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

func (*ReleasePlanAdmission) DeepCopyObject

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

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

func (*ReleasePlanAdmission) MarkMatched

func (rpa *ReleasePlanAdmission) MarkMatched(releasePlan *ReleasePlan)

MarkMatched marks the ReleasePlanAdmission as matched to a given ReleasePlan.

type ReleasePlanAdmissionList

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

ReleasePlanAdmissionList contains a list of ReleasePlanAdmission.

func (*ReleasePlanAdmissionList) DeepCopy

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

func (*ReleasePlanAdmissionList) DeepCopyInto

func (in *ReleasePlanAdmissionList) DeepCopyInto(out *ReleasePlanAdmissionList)

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

func (*ReleasePlanAdmissionList) DeepCopyObject

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

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

type ReleasePlanAdmissionSpec

type ReleasePlanAdmissionSpec struct {
	// Applications is a list of references to applications to be released in the managed namespace
	// +required
	Applications []string `json:"applications"`

	// Data is an unstructured key used for providing data for the managed Release Pipeline
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	Data *runtime.RawExtension `json:"data,omitempty"`

	// Environment defines which Environment will be used to release the Application
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	Environment string `json:"environment,omitempty"`

	// Origin references where the release requests should come from
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	Origin string `json:"origin"`

	// Pipeline contains all the information about the managed Pipeline
	// +required
	Pipeline *tektonutils.Pipeline `json:"pipeline"`

	// Policy to validate before releasing an artifact
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	Policy string `json:"policy"`
}

ReleasePlanAdmissionSpec defines the desired state of ReleasePlanAdmission.

func (*ReleasePlanAdmissionSpec) DeepCopy

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

func (*ReleasePlanAdmissionSpec) DeepCopyInto

func (in *ReleasePlanAdmissionSpec) DeepCopyInto(out *ReleasePlanAdmissionSpec)

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

type ReleasePlanAdmissionStatus

type ReleasePlanAdmissionStatus struct {
	// Conditions represent the latest available observations for the releasePlanAdmission
	// +optional
	Conditions []metav1.Condition `json:"conditions"`

	// ReleasePlan is a list of releasePlans matched to the ReleasePlanAdmission
	// +optional
	ReleasePlans []MatchedReleasePlan `json:"releasePlans"`
}

ReleasePlanAdmissionStatus defines the observed state of ReleasePlanAdmission.

func (*ReleasePlanAdmissionStatus) DeepCopy

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

func (*ReleasePlanAdmissionStatus) DeepCopyInto

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

type ReleasePlanList

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

ReleasePlanList contains a list of ReleasePlan.

func (*ReleasePlanList) DeepCopy

func (in *ReleasePlanList) DeepCopy() *ReleasePlanList

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

func (*ReleasePlanList) DeepCopyInto

func (in *ReleasePlanList) DeepCopyInto(out *ReleasePlanList)

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

func (*ReleasePlanList) DeepCopyObject

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

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

type ReleasePlanSpec

type ReleasePlanSpec struct {
	// Application is a reference to the application to be released in the managed namespace
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	Application string `json:"application"`

	// Data is an unstructured key used for providing data for the managed Release Pipeline
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	Data *runtime.RawExtension `json:"data,omitempty"`

	// PipelineRef is an optional reference to a Pipeline that would be executed
	// before the managed Release Pipeline
	// +optional
	PipelineRef *tektonutils.PipelineRef `json:"pipelineRef,omitempty"`

	// ServiceAccount is the name of the service account to use in the
	// Pipeline to gain elevated privileges
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	ServiceAccount string `json:"serviceAccount,omitempty"`

	// ReleaseGracePeriodDays is the number of days a Release should be kept
	// This value is used to define the Release ExpirationTime
	// +kubebuilder:default:=7
	// +optional
	ReleaseGracePeriodDays int `json:"releaseGracePeriodDays,omitempty"`

	// Target references where to send the release requests
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	Target string `json:"target"`
}

ReleasePlanSpec defines the desired state of ReleasePlan.

func (*ReleasePlanSpec) DeepCopy

func (in *ReleasePlanSpec) DeepCopy() *ReleasePlanSpec

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

func (*ReleasePlanSpec) DeepCopyInto

func (in *ReleasePlanSpec) DeepCopyInto(out *ReleasePlanSpec)

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

type ReleasePlanStatus

type ReleasePlanStatus struct {
	// Conditions represent the latest available observations for the releasePlan
	// +optional
	Conditions []metav1.Condition `json:"conditions"`

	// ReleasePlanAdmission contains the information of the releasePlanAdmission this ReleasePlan is
	// matched to
	// +optional
	ReleasePlanAdmission MatchedReleasePlanAdmission `json:"releasePlanAdmission,omitempty"`
}

ReleasePlanStatus defines the observed state of ReleasePlan.

func (*ReleasePlanStatus) DeepCopy

func (in *ReleasePlanStatus) DeepCopy() *ReleasePlanStatus

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

func (*ReleasePlanStatus) DeepCopyInto

func (in *ReleasePlanStatus) DeepCopyInto(out *ReleasePlanStatus)

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

type ReleaseServiceConfig

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

	Spec   ReleaseServiceConfigSpec   `json:"spec,omitempty"`
	Status ReleaseServiceConfigStatus `json:"status,omitempty"`
}

ReleaseServiceConfig is the Schema for the releaseserviceconfigs API

func (*ReleaseServiceConfig) DeepCopy

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

func (*ReleaseServiceConfig) DeepCopyInto

func (in *ReleaseServiceConfig) DeepCopyInto(out *ReleaseServiceConfig)

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

func (*ReleaseServiceConfig) DeepCopyObject

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

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

type ReleaseServiceConfigList

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

ReleaseServiceConfigList contains a list of ReleaseServiceConfig

func (*ReleaseServiceConfigList) DeepCopy

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

func (*ReleaseServiceConfigList) DeepCopyInto

func (in *ReleaseServiceConfigList) DeepCopyInto(out *ReleaseServiceConfigList)

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

func (*ReleaseServiceConfigList) DeepCopyObject

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

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

type ReleaseServiceConfigSpec

type ReleaseServiceConfigSpec struct {
	// Debug is the boolean that specifies whether or not the Release Service should run
	// in debug mode
	// +optional
	Debug bool `json:"debug,omitempty"`

	// AdvisoryRepo is the repo to create advisories in during the managed release PipelineRun
	// +optional
	AdvisoryRepo string `json:"advisoryRepo,omitempty"`

	// DefaultTimeouts contain the default Tekton timeouts to be used in case they are
	// not specified in the ReleasePlanAdmission resource.
	DefaultTimeouts tektonv1.TimeoutFields `json:"defaultTimeouts,omitempty"`
}

ReleaseServiceConfigSpec defines the desired state of ReleaseServiceConfig.

func (*ReleaseServiceConfigSpec) DeepCopy

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

func (*ReleaseServiceConfigSpec) DeepCopyInto

func (in *ReleaseServiceConfigSpec) DeepCopyInto(out *ReleaseServiceConfigSpec)

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

type ReleaseServiceConfigStatus

type ReleaseServiceConfigStatus struct {
}

ReleaseServiceConfigStatus defines the observed state of ReleaseServiceConfig.

func (*ReleaseServiceConfigStatus) DeepCopy

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

func (*ReleaseServiceConfigStatus) DeepCopyInto

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

type ReleaseSpec

type ReleaseSpec struct {
	// Snapshot to be released
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	Snapshot string `json:"snapshot"`

	// ReleasePlan to use for this particular Release
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +required
	ReleasePlan string `json:"releasePlan"`

	// Data is an unstructured key used for providing data for the managed Release Pipeline
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	Data *runtime.RawExtension `json:"data,omitempty"`

	// GracePeriodDays is the number of days a Release should be kept
	// This value is used to define the Release ExpirationTime
	// +optional
	GracePeriodDays int `json:"gracePeriodDays,omitempty"`
}

ReleaseSpec defines the desired state of Release.

func (*ReleaseSpec) DeepCopy

func (in *ReleaseSpec) DeepCopy() *ReleaseSpec

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

func (*ReleaseSpec) DeepCopyInto

func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)

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

type ReleaseStatus

type ReleaseStatus struct {
	// Attribution contains information about the entity authorizing the release
	// +optional
	Attribution AttributionInfo `json:"attribution,omitempty"`

	// Conditions represent the latest available observations for the release
	// +optional
	Conditions []metav1.Condition `json:"conditions"`

	// PostActionsExecution contains information about the post-actions execution
	// +optional
	PostActionsExecution PostActionsExecutionInfo `json:"postActionsExecution,omitempty"`

	// Processing contains information about the release processing
	// +optional
	Processing ProcessingInfo `json:"processing,omitempty"`

	// Validation contains information about the release validation
	// +optional
	Validation ValidationInfo `json:"validation,omitempty"`

	// Target references where this release is intended to be released to
	// +kubebuilder:validation:Pattern=^[a-z0-9]([-a-z0-9]*[a-z0-9])?$
	// +optional
	Target string `json:"target,omitempty"`

	// Automated indicates whether the Release was created as part of an automated process or manually by an end-user
	// +optional
	Automated bool `json:"automated,omitempty"`

	// CompletionTime is the time when a Release was completed
	// +optional
	CompletionTime *metav1.Time `json:"completionTime,omitempty"`

	// StartTime is the time when a Release started
	// +optional
	StartTime *metav1.Time `json:"startTime,omitempty"`

	// ExpirationTime is the time when a Release can be purged
	// +optional
	ExpirationTime *metav1.Time `json:"expirationTime,omitempty"`
}

ReleaseStatus defines the observed state of Release.

func (*ReleaseStatus) DeepCopy

func (in *ReleaseStatus) DeepCopy() *ReleaseStatus

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

func (*ReleaseStatus) DeepCopyInto

func (in *ReleaseStatus) DeepCopyInto(out *ReleaseStatus)

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

type ValidationInfo

type ValidationInfo struct {
	// FailedPostValidation indicates whether the Release was marked as invalid after being initially marked as valid
	FailedPostValidation bool `json:"failedPostValidation,omitempty"`

	// Time is the time when the Release was validated or when the validation state changed
	// +optional
	Time *metav1.Time `json:"time,omitempty"`
}

ValidationInfo defines the observed state of the release validation.

func (*ValidationInfo) DeepCopy

func (in *ValidationInfo) DeepCopy() *ValidationInfo

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

func (*ValidationInfo) DeepCopyInto

func (in *ValidationInfo) DeepCopyInto(out *ValidationInfo)

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

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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