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 ¶
- Variables
- type DownstreamTemplate
- type FunctionTemplate
- type InjectionSelectorTemplate
- type MapExpr
- type ObjectSelector
- type PackageContextTemplate
- type PackageVariantSet
- type PackageVariantSetList
- type PackageVariantSetSpec
- type PackageVariantSetStatus
- type PackageVariantTemplate
- type PipelineTemplate
- type RepositoryTarget
- type Target
Constants ¶
This section is empty.
Variables ¶
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 ¶
func (in *InjectionSelectorTemplate) DeepCopy() *InjectionSelectorTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InjectionSelectorTemplate.
func (*InjectionSelectorTemplate) DeepCopyInto ¶
func (in *InjectionSelectorTemplate) DeepCopyInto(out *InjectionSelectorTemplate)
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MapExpr.
func (*MapExpr) DeepCopyInto ¶
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 ¶
func (in *PackageContextTemplate) DeepCopy() *PackageContextTemplate
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 ¶
func (o *PackageVariantSet) GetSpec() *PackageVariantSetSpec
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 ¶
func (in *PackageVariantSetList) DeepCopy() *PackageVariantSetList
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 ¶
func (in *PackageVariantSetSpec) DeepCopy() *PackageVariantSetSpec
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 ¶
func (in *PackageVariantSetStatus) DeepCopy() *PackageVariantSetStatus
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 ¶
func (in *PackageVariantTemplate) DeepCopy() *PackageVariantTemplate
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 ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Target.
func (*Target) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.