v1alpha1

package
v0.0.0-...-c214c7e Latest Latest
Warning

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

Go to latest
Published: Apr 18, 2024 License: Apache-2.0 Imports: 5 Imported by: 4

Documentation

Overview

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

Index

Constants

This section is empty.

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 BuildPipelineSelector

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

	Spec BuildPipelineSelectorSpec `json:"spec,omitempty"`
}

BuildPipelineSelector is the Schema for the BuildPipelineSelectors API

func (*BuildPipelineSelector) DeepCopy

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

func (*BuildPipelineSelector) DeepCopyInto

func (in *BuildPipelineSelector) DeepCopyInto(out *BuildPipelineSelector)

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

func (*BuildPipelineSelector) DeepCopyObject

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

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

type BuildPipelineSelectorList

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

BuildPipelineSelectorList contains a list of BuildPipelineSelector

func (*BuildPipelineSelectorList) DeepCopy

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

func (*BuildPipelineSelectorList) DeepCopyInto

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

func (*BuildPipelineSelectorList) DeepCopyObject

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

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

type BuildPipelineSelectorSpec

type BuildPipelineSelectorSpec struct {
	// Defines chain of pipeline selectors.
	// The first matching item is used.
	// +kubebuilder:validation:Required
	Selectors []PipelineSelector `json:"selectors"`
}

BuildPipelineSelectorSpec defines the desired state of BuildPipelineSelector

func (*BuildPipelineSelectorSpec) DeepCopy

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

func (*BuildPipelineSelectorSpec) DeepCopyInto

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

type PipelineParam

type PipelineParam struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

PipelineParam is a type to describe pipeline parameters. tektonapi.Param type is not used due to validation issues.

func (*PipelineParam) DeepCopy

func (in *PipelineParam) DeepCopy() *PipelineParam

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

func (*PipelineParam) DeepCopyInto

func (in *PipelineParam) DeepCopyInto(out *PipelineParam)

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

type PipelineSelector

type PipelineSelector struct {
	// Name of the selector item. Optional.
	// +kubebuilder:validation:Optional
	Name string `json:"name,omitempty"`

	// Build Pipeline to use if the selector conditions are met.
	// +kubebuilder:validation:Required
	PipelineRef tektonapi.PipelineRef `json:"pipelineRef"`

	// Extra arguments to add to the specified pipeline run.
	// +kubebuilder:validation:Optional
	// +listType=atomic
	PipelineParams []PipelineParam `json:"pipelineParams,omitempty"`

	// Defines the selector conditions when given build pipeline should be used.
	// All conditions are connected via AND, whereas cases within any condition connected via OR.
	// If the section is omitted, then the condition is considered true (usually used for fallback condition).
	// +kubebuilder:validation:Optional
	WhenConditions WhenCondition `json:"when,omitempty"`
}

PipelineSelector defines allowed build pipeline and conditions when it should be used.

func (*PipelineSelector) DeepCopy

func (in *PipelineSelector) DeepCopy() *PipelineSelector

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

func (*PipelineSelector) DeepCopyInto

func (in *PipelineSelector) DeepCopyInto(out *PipelineSelector)

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

type WhenCondition

type WhenCondition struct {
	// Defines component language to match, e.g. 'java'.
	// The value to compare with is taken from devfile.metadata.language field.
	// +kubebuilder:validation:Optional
	Language string `json:"language,omitempty"`

	// Defines type of project of the component to match, e.g. 'quarkus'.
	// The value to compare with is taken from devfile.metadata.projectType field.
	// +kubebuilder:validation:Optional
	ProjectType string `json:"projectType,omitempty"`

	// Defines if a Dockerfile should be present in the component.
	// Note, unset (nil) value is not the same as false (unset means skip the dockerfile check).
	// The value to compare with is taken from devfile components of image type.
	// +kubebuilder:validation:Optional
	DockerfileRequired *bool `json:"dockerfile,omitempty"`

	// Defines list of allowed component names to match, e.g. 'my-component'.
	// The value to compare with is taken from component.metadata.name field.
	// +kubebuilder:validation:Optional
	ComponentName string `json:"componentName,omitempty"`

	// Defines annotations to match.
	// The values to compare with are taken from component.metadata.annotations field.
	// +kubebuilder:validation:Optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// Defines labels to match.
	// The values to compare with are taken from component.metadata.labels field.
	// +kubebuilder:validation:Optional
	Labels map[string]string `json:"labels,omitempty"`
}

WhenConditions defines requirements when specified build pipeline must be used. All conditions are connected via AND, whereas cases within any condition connected via OR. Example:

language: java
projectType: spring,quarkus
annotations:
   builder: gradle,maven

which means that language is 'java' AND (project type is 'spring' OR 'quarkus') AND annotation 'builder' is present with value 'gradle' OR 'maven'.

func (*WhenCondition) DeepCopy

func (in *WhenCondition) DeepCopy() *WhenCondition

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

func (*WhenCondition) DeepCopyInto

func (in *WhenCondition) DeepCopyInto(out *WhenCondition)

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