v1alpha2

package
v0.0.0-...-c7d747a Latest Latest
Warning

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

Go to latest
Published: Nov 22, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the config.porch.kpt.dev v1alpha1 API group +kubebuilder:object:generate=true +groupName=config.porch.kpt.dev

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "config.porch.kpt.dev", Version: "v1alpha2"}

	// 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 DownstreamTemplate

type DownstreamTemplate struct {
	Repo        *string `json:"repo,omitempty"`
	Package     *string `json:"package,omitempty"`
	RepoExpr    *string `json:"repoExpr,omitempty"`
	PackageExpr *string `json:"packageExpr,omitempty"`
}

DownstreamTemplate is used to calculate the downstream field of the resulting package variants. Only one of Repo and RepoExpr may be specified; similarly only one of Package and PackageExpr may be specified.

func (*DownstreamTemplate) DeepCopy

func (in *DownstreamTemplate) DeepCopy() *DownstreamTemplate

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

func (*DownstreamTemplate) DeepCopyInto

func (in *DownstreamTemplate) DeepCopyInto(out *DownstreamTemplate)

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

type FunctionTemplate

type FunctionTemplate struct {
	kptfilev1.Function `json:",inline"`

	// ConfigMapExprs allows use of CEL to dynamically create the keys and values in the
	// function config ConfigMap. Entries in this field take precedent over those with
	// the same keys that are present in ConfigMap.
	// +optional
	ConfigMapExprs []MapExpr `json:"configMapExprs,omitempty"`
}

FunctionTemplate is used in generating KRM function pipeline entries; that is, it is used to generate Kptfile Function objects.

func (*FunctionTemplate) DeepCopy

func (in *FunctionTemplate) DeepCopy() *FunctionTemplate

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

func (*FunctionTemplate) DeepCopyInto

func (in *FunctionTemplate) DeepCopyInto(out *FunctionTemplate)

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

type InjectionSelectorTemplate

type InjectionSelectorTemplate struct {
	Group   *string `json:"group,omitempty"`
	Version *string `json:"version,omitempty"`
	Kind    *string `json:"kind,omitempty"`
	Name    *string `json:"name,omitempty"`

	NameExpr *string `json:"nameExpr,omitempty"`
}

InjectionSelectorTemplate is used to calculate the injectors field of the resulting package variants. Exactly one of the Name and NameExpr fields must be specified. The other fields are optional.

func (*InjectionSelectorTemplate) DeepCopy

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

func (*InjectionSelectorTemplate) DeepCopyInto

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

type MapExpr

type MapExpr struct {
	Key       *string `json:"key,omitempty"`
	Value     *string `json:"value,omitempty"`
	KeyExpr   *string `json:"keyExpr,omitempty"`
	ValueExpr *string `json:"valueExpr,omitempty"`
}

MapExpr is used for various fields to calculate map entries. Only one of Key and KeyExpr may be specified; similarly only on of Value and ValueExpr may be specified.

func (*MapExpr) DeepCopy

func (in *MapExpr) DeepCopy() *MapExpr

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

func (*MapExpr) DeepCopyInto

func (in *MapExpr) DeepCopyInto(out *MapExpr)

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

type ObjectSelector

type ObjectSelector struct {
	metav1.LabelSelector `json:",inline"`

	// APIVersion of the target resources
	APIVersion string `yaml:"apiVersion,omitempty" json:"apiVersion,omitempty"`

	// Kind of the target resources
	Kind string `yaml:"kind,omitempty" json:"kind,omitempty"`

	// Name of the target resource
	// +optional
	Name *string `yaml:"name,omitempty" json:"name,omitempty"`
}

func (*ObjectSelector) DeepCopy

func (in *ObjectSelector) DeepCopy() *ObjectSelector

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

func (*ObjectSelector) DeepCopyInto

func (in *ObjectSelector) DeepCopyInto(out *ObjectSelector)

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

type PackageContextTemplate

type PackageContextTemplate struct {
	Data           map[string]string `json:"data,omitempty"`
	RemoveKeys     []string          `json:"removeKeys,omitempty"`
	DataExprs      []MapExpr         `json:"dataExprs,omitempty"`
	RemoveKeyExprs []string          `json:"removeKeyExprs,omitempty"`
}

PackageContextTemplate is used to calculate the packageContext field of the resulting package variants. The plain fields and Exprs fields will be merged, with the Exprs fields taking precedence.

func (*PackageContextTemplate) DeepCopy

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

func (*PackageContextTemplate) DeepCopyInto

func (in *PackageContextTemplate) DeepCopyInto(out *PackageContextTemplate)

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

type PackageVariantSet

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

	Spec   PackageVariantSetSpec   `json:"spec,omitempty"`
	Status PackageVariantSetStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:storageversion +kubebuilder:subresource:status

PackageVariantSet represents an upstream package revision and a way to target specific downstream repositories where a variant of the upstream package should be created.

func (*PackageVariantSet) DeepCopy

func (in *PackageVariantSet) DeepCopy() *PackageVariantSet

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

func (*PackageVariantSet) DeepCopyInto

func (in *PackageVariantSet) DeepCopyInto(out *PackageVariantSet)

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

func (*PackageVariantSet) DeepCopyObject

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

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

func (*PackageVariantSet) GetSpec

type PackageVariantSetList

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

PackageVariantSetList contains a list of PackageVariantSet

func (*PackageVariantSetList) DeepCopy

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

func (*PackageVariantSetList) DeepCopyInto

func (in *PackageVariantSetList) DeepCopyInto(out *PackageVariantSetList)

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

func (*PackageVariantSetList) DeepCopyObject

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

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

type PackageVariantSetSpec

type PackageVariantSetSpec struct {
	Upstream *pkgvarapi.Upstream `json:"upstream,omitempty"`
	Targets  []Target            `json:"targets,omitempty"`
}

PackageVariantSetSpec defines the desired state of PackageVariantSet

func (*PackageVariantSetSpec) DeepCopy

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

func (*PackageVariantSetSpec) DeepCopyInto

func (in *PackageVariantSetSpec) DeepCopyInto(out *PackageVariantSetSpec)

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

type PackageVariantSetStatus

type PackageVariantSetStatus struct {
	// Conditions describes the reconciliation state of the object.
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

PackageVariantSetStatus defines the observed state of PackageVariantSet

func (*PackageVariantSetStatus) DeepCopy

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

func (*PackageVariantSetStatus) DeepCopyInto

func (in *PackageVariantSetStatus) DeepCopyInto(out *PackageVariantSetStatus)

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

type PackageVariantTemplate

type PackageVariantTemplate struct {
	// Downstream allows overriding the default downstream package and repository name
	// +optional
	Downstream *DownstreamTemplate `json:"downstream,omitempty"`

	// AdoptionPolicy allows overriding the PackageVariant adoption policy
	// +optional
	AdoptionPolicy *pkgvarapi.AdoptionPolicy `json:"adoptionPolicy,omitempty"`

	// DeletionPolicy allows overriding the PackageVariant deletion policy
	// +optional
	DeletionPolicy *pkgvarapi.DeletionPolicy `json:"deletionPolicy,omitempty"`

	// Labels allows specifying the spec.Labels field of the generated PackageVariant
	// +optional
	Labels map[string]string `json:"labels,omitempty"`

	// LabelsExprs allows specifying the spec.Labels field of the generated PackageVariant
	// using CEL to dynamically create the keys and values. Entries in this field take precedent over
	// those with the same keys that are present in Labels.
	// +optional
	LabelExprs []MapExpr `json:"labelExprs,omitempty"`

	// Annotations allows specifying the spec.Annotations field of the generated PackageVariant
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`

	// AnnotationsExprs allows specifying the spec.Annotations field of the generated PackageVariant
	// using CEL to dynamically create the keys and values. Entries in this field take precedent over
	// those with the same keys that are present in Annotations.
	// +optional
	AnnotationExprs []MapExpr `json:"annotationExprs,omitempty"`

	// PackageContext allows specifying the spec.PackageContext field of the generated PackageVariant
	// +optional
	PackageContext *PackageContextTemplate `json:"packageContext,omitempty"`

	// Pipeline allows specifying the spec.Pipeline field of the generated PackageVariant
	// +optional
	Pipeline *PipelineTemplate `json:"pipeline,omitempty"`

	// Injectors allows specifying the spec.Injectors field of the generated PackageVariant
	// +optional
	Injectors []InjectionSelectorTemplate `json:"injectors,omitempty"`
}

func (*PackageVariantTemplate) DeepCopy

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

func (*PackageVariantTemplate) DeepCopyInto

func (in *PackageVariantTemplate) DeepCopyInto(out *PackageVariantTemplate)

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

type PipelineTemplate

type PipelineTemplate struct {
	// Validators is used to caculate the pipeline.validators field of the
	// resulting package variants.
	// +optional
	Validators []FunctionTemplate `json:"validators,omitempty"`

	// Mutators is used to caculate the pipeline.mutators field of the
	// resulting package variants.
	// +optional
	Mutators []FunctionTemplate `json:"mutators,omitempty"`
}

PipelineTemplate is used to calculate the pipeline field of the resulting package variants.

func (*PipelineTemplate) DeepCopy

func (in *PipelineTemplate) DeepCopy() *PipelineTemplate

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

func (*PipelineTemplate) DeepCopyInto

func (in *PipelineTemplate) DeepCopyInto(out *PipelineTemplate)

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

type RepositoryTarget

type RepositoryTarget struct {
	// Name contains the name of the Repository resource, which must be in
	// the same namespace as the PackageVariantSet resource.
	// +required
	Name string `json:"name"`

	// PackageNames contains names to use for package instances in this repository;
	// that is, the same upstream will be instantiated multiple times using these names.
	// +optional
	PackageNames []string `json:"packageNames,omitempty"`
}

func (*RepositoryTarget) DeepCopy

func (in *RepositoryTarget) DeepCopy() *RepositoryTarget

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

func (*RepositoryTarget) DeepCopyInto

func (in *RepositoryTarget) DeepCopyInto(out *RepositoryTarget)

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

type Target

type Target struct {
	// Exactly one of Repositories, RepositorySeletor, and ObjectSelector must be
	// populated
	// option 1: an explicit repositories and package names
	Repositories []RepositoryTarget `json:"repositories,omitempty"`

	// option 2: a label selector against a set of repositories
	RepositorySelector *metav1.LabelSelector `json:"repositorySelector,omitempty"`

	// option 3: a selector against a set of arbitrary objects
	ObjectSelector *ObjectSelector `json:"objectSelector,omitempty"`

	// Template specifies how to generate a PackageVariant from a target
	Template *PackageVariantTemplate `json:"template,omitempty"`
}

func (*Target) DeepCopy

func (in *Target) DeepCopy() *Target

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

func (*Target) DeepCopyInto

func (in *Target) DeepCopyInto(out *Target)

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