porch

package
v1.5.10-test Latest Latest
Warning

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

Go to latest
Published: Jun 3, 2026 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	LatestPackageRevisionKey   = "kpt.dev/latest-revision"
	LatestPackageRevisionValue = "true"

	// PushOnFnRenderFailureKey annotation controls whether to push package changes even when function rendering fails.
	PushOnFnRenderFailureKey   = "porch.kpt.dev/push-on-render-failure"
	PushOnFnRenderFailureValue = "true"
)
View Source
const (
	// Deprecated: prefer ResultListGVK
	ResultListKind = "FunctionResultList"
	// Deprecated: prefer ResultListGVK
	ResultListGroup = "kpt.dev"
	// Deprecated: prefer ResultListGVK
	ResultListVersion = "v1"
	// Deprecated: prefer ResultListGVK
	ResultListAPIVersion = ResultListGroup + "/" + ResultListVersion
)
View Source
const GroupName = "porch.kpt.dev"

Variables

View Source
var (
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	AddToScheme   = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

Functions

func Kind

func Kind(kind string) schema.GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Types

type Condition

type Condition struct {
	Type string `json:"type"`

	Status ConditionStatus `json:"status"`

	Reason string `json:"reason,omitempty"`

	Message string `json:"message,omitempty"`
}

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

type ConditionStatus

type ConditionStatus string
const (
	ConditionTrue    ConditionStatus = "True"
	ConditionFalse   ConditionStatus = "False"
	ConditionUnknown ConditionStatus = "Unknown"
)

type Field

type Field struct {
	// Path is the field path. This field is required.
	Path string `json:"path,omitempty"`

	// CurrentValue is the current field value
	CurrentValue string `json:"currentValue,omitempty"`

	// ProposedValue is the proposed value of the field to fix an issue.
	ProposedValue string `json:"proposedValue,omitempty"`
}

Field references a field in a resource

func (*Field) DeepCopy

func (in *Field) DeepCopy() *Field

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

func (*Field) DeepCopyInto

func (in *Field) DeepCopyInto(out *Field)

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

type File

type File struct {
	// Path is relative path to the file containing the resource.
	// This field is required.
	Path string `json:"path,omitempty"`

	// Index is the index into the file containing the resource
	// (i.e. if there are multiple resources in a single file)
	Index int `json:"index,omitempty"`
}

File references a file containing a resource

func (*File) DeepCopy

func (in *File) DeepCopy() *File

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

func (*File) DeepCopyInto

func (in *File) DeepCopyInto(out *File)

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

type GitLock

type GitLock struct {
	// Repo is the git repository that was fetched.
	// e.g. 'https://github.com/kubernetes/examples.git'
	Repo string `json:"repo,omitempty"`

	// Directory is the sub directory of the git repository that was fetched.
	// e.g. 'staging/cockroachdb'
	Directory string `json:"directory,omitempty"`

	// Ref can be a Git branch, tag, or a commit SHA-1 that was fetched.
	// e.g. 'master'
	Ref string `json:"ref,omitempty"`

	// Commit is the SHA-1 for the last fetch of the package.
	// This is set by kpt for bookkeeping purposes.
	Commit string `json:"commit,omitempty"`
}

GitLock is the resolved locator for a package on Git.

func (*GitLock) DeepCopy

func (in *GitLock) DeepCopy() *GitLock

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

func (*GitLock) DeepCopyInto

func (in *GitLock) DeepCopyInto(out *GitLock)

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

type GitPackage

type GitPackage struct {
	// Address of the Git repository, for example:
	//   `https://github.com/GoogleCloudPlatform/blueprints.git`
	Repo string `json:"repo"`

	// `Ref` is the git ref containing the package. Ref can be a branch, tag, or commit SHA.
	Ref string `json:"ref"`

	// Directory within the Git repository where the packages are stored. A subdirectory of this directory containing a Kptfile is considered a package.
	Directory string `json:"directory"`

	// Reference to secret containing authentication credentials. Optional.
	SecretRef SecretRef `json:"secretRef,omitempty"`
}

func (*GitPackage) DeepCopy

func (in *GitPackage) DeepCopy() *GitPackage

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

func (*GitPackage) DeepCopyInto

func (in *GitPackage) DeepCopyInto(out *GitPackage)

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

type Locator

type Locator struct {
	// Type is the type of origin.
	Type OriginType `json:"type,omitempty"`

	// Git is the resolved locator for a package on Git.
	Git *GitLock `json:"git,omitempty"`
}

Locator is a resolved locator for the last fetch of the package.

func (*Locator) DeepCopy

func (in *Locator) DeepCopy() *Locator

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

func (*Locator) DeepCopyInto

func (in *Locator) DeepCopyInto(out *Locator)

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

type NameMeta

type NameMeta struct {
	// Name is the metadata.name field of a Resource
	Name string `json:"name,omitempty"`
	// Namespace is the metadata.namespace field of a Resource
	Namespace string `json:"namespace,omitempty"`
}

NameMeta contains name information.

func (*NameMeta) DeepCopy

func (in *NameMeta) DeepCopy() *NameMeta

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

func (*NameMeta) DeepCopyInto

func (in *NameMeta) DeepCopyInto(out *NameMeta)

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

type OciPackage

type OciPackage struct {
	// Image is the address of an OCI image.
	Image string `json:"image"`
}

OciPackage describes a repository compatible with the Open Container Registry standard.

func (*OciPackage) DeepCopy

func (in *OciPackage) DeepCopy() *OciPackage

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

func (*OciPackage) DeepCopyInto

func (in *OciPackage) DeepCopyInto(out *OciPackage)

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

type OriginType

type OriginType string

type PackageCloneTaskSpec

type PackageCloneTaskSpec struct {

	// `Upstream` is the reference to the upstream package to clone.
	Upstream UpstreamPackage `json:"upstreamRef,omitempty"`
}

func (*PackageCloneTaskSpec) DeepCopy

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

func (*PackageCloneTaskSpec) DeepCopyInto

func (in *PackageCloneTaskSpec) DeepCopyInto(out *PackageCloneTaskSpec)

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

type PackageEditTaskSpec

type PackageEditTaskSpec struct {
	Source *PackageRevisionRef `json:"sourceRef,omitempty"`
}

func (*PackageEditTaskSpec) DeepCopy

func (in *PackageEditTaskSpec) DeepCopy() *PackageEditTaskSpec

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

func (*PackageEditTaskSpec) DeepCopyInto

func (in *PackageEditTaskSpec) DeepCopyInto(out *PackageEditTaskSpec)

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

type PackageInitTaskSpec

type PackageInitTaskSpec struct {
	// `Subpackage` is a directory path to a subpackage to initialize. If unspecified, the main package will be initialized.
	Subpackage string `json:"subpackage,omitempty"`
	// `Description` is a short description of the package.
	Description string `json:"description,omitempty"`
	// `Keywords` is a list of keywords describing the package.
	Keywords []string `json:"keywords,omitempty"`
	// `Site is a link to page with information about the package.
	Site string `json:"site,omitempty"`
}

PackageInitTaskSpec defines the package initialization task.

func (*PackageInitTaskSpec) DeepCopy

func (in *PackageInitTaskSpec) DeepCopy() *PackageInitTaskSpec

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

func (*PackageInitTaskSpec) DeepCopyInto

func (in *PackageInitTaskSpec) DeepCopyInto(out *PackageInitTaskSpec)

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

type PackageMergeStrategy

type PackageMergeStrategy string
const (
	ResourceMerge      PackageMergeStrategy = "resource-merge"
	FastForward        PackageMergeStrategy = "fast-forward"
	ForceDeleteReplace PackageMergeStrategy = "force-delete-replace"
	CopyMerge          PackageMergeStrategy = "copy-merge"
)

type PackageMetadata

type PackageMetadata struct {
	Labels      map[string]string `json:"labels,omitempty"`
	Annotations map[string]string `json:"annotations,omitempty"`
}

func (*PackageMetadata) DeepCopy

func (in *PackageMetadata) DeepCopy() *PackageMetadata

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

func (*PackageMetadata) DeepCopyInto

func (in *PackageMetadata) DeepCopyInto(out *PackageMetadata)

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

type PackageRevision

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

	Spec   PackageRevisionSpec   `json:"spec,omitempty"`
	Status PackageRevisionStatus `json:"status,omitempty"`
}

PackageRevision +genclient +k8s:openapi-gen=true +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +kubebuilder:storageversion

func (*PackageRevision) DeepCopy

func (in *PackageRevision) DeepCopy() *PackageRevision

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

func (*PackageRevision) DeepCopyInto

func (in *PackageRevision) DeepCopyInto(out *PackageRevision)

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

func (*PackageRevision) DeepCopyObject

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

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

type PackageRevisionLifecycle

type PackageRevisionLifecycle string
const (
	PackageRevisionLifecycleDraft            PackageRevisionLifecycle = "Draft"
	PackageRevisionLifecycleProposed         PackageRevisionLifecycle = "Proposed"
	PackageRevisionLifecyclePublished        PackageRevisionLifecycle = "Published"
	PackageRevisionLifecycleDeletionProposed PackageRevisionLifecycle = "DeletionProposed"
)

type PackageRevisionList

type PackageRevisionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []PackageRevision `json:"items"`
}

PackageRevisionList +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PackageRevisionList) DeepCopy

func (in *PackageRevisionList) DeepCopy() *PackageRevisionList

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

func (*PackageRevisionList) DeepCopyInto

func (in *PackageRevisionList) DeepCopyInto(out *PackageRevisionList)

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

func (*PackageRevisionList) DeepCopyObject

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

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

type PackageRevisionRef

type PackageRevisionRef struct {
	// `Name` is the name of the referenced PackageRevision resource.
	Name string `json:"name"`
}

PackageRevisionRef is a reference to a package revision.

func (*PackageRevisionRef) DeepCopy

func (in *PackageRevisionRef) DeepCopy() *PackageRevisionRef

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

func (*PackageRevisionRef) DeepCopyInto

func (in *PackageRevisionRef) DeepCopyInto(out *PackageRevisionRef)

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

type PackageRevisionResources

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

	Spec   PackageRevisionResourcesSpec   `json:"spec,omitempty"`
	Status PackageRevisionResourcesStatus `json:"status,omitempty"`
}

PackageRevisionResources +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true +kubebuilder:storageversion

func (*PackageRevisionResources) DeepCopy

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

func (*PackageRevisionResources) DeepCopyInto

func (in *PackageRevisionResources) DeepCopyInto(out *PackageRevisionResources)

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

func (*PackageRevisionResources) DeepCopyObject

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

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

type PackageRevisionResourcesList

type PackageRevisionResourcesList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []PackageRevisionResources `json:"items"`
}

PackageRevisionResourcesList +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PackageRevisionResourcesList) DeepCopy

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

func (*PackageRevisionResourcesList) DeepCopyInto

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

func (*PackageRevisionResourcesList) DeepCopyObject

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

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

type PackageRevisionResourcesSpec

type PackageRevisionResourcesSpec struct {
	// PackageName identifies the package in the repository.
	PackageName string `json:"packageName,omitempty"`

	// WorkspaceName identifies the workspace of the package.
	WorkspaceName string `json:"workspaceName,omitempty"`

	// Revision identifies the version of the package.
	Revision int `json:"revision,omitempty"`

	// RepositoryName is the name of the Repository object containing this package.
	RepositoryName string `json:"repository,omitempty"`

	// Resources are the content of the package.
	Resources map[string]string `json:"resources,omitempty"`
}

PackageRevisionResourcesSpec represents resources (as ResourceList serialized as yaml string) of the PackageRevision.

func (*PackageRevisionResourcesSpec) DeepCopy

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

func (*PackageRevisionResourcesSpec) DeepCopyInto

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

type PackageRevisionResourcesStatus

type PackageRevisionResourcesStatus struct {
	// RenderStatus contains the result of rendering the package resources.
	RenderStatus RenderStatus `json:"renderStatus,omitempty"`
}

PackageRevisionResourcesStatus represents state of the rendered package resources.

func (*PackageRevisionResourcesStatus) DeepCopy

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

func (*PackageRevisionResourcesStatus) DeepCopyInto

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

type PackageRevisionSpec

type PackageRevisionSpec struct {
	// PackageName identifies the package in the repository.
	PackageName string `json:"packageName,omitempty"`

	// RepositoryName is the name of the Repository object containing this package.
	RepositoryName string `json:"repository,omitempty"`

	// WorkspaceName is a short, unique description of the changes contained in this package revision.
	WorkspaceName string `json:"workspaceName,omitempty"`

	// Revision identifies the version of the package.
	Revision int `json:"revision,omitempty"`

	// Parent references a package that provides resources to us
	Parent *ParentReference `json:"parent,omitempty"`

	Lifecycle PackageRevisionLifecycle `json:"lifecycle,omitempty"`

	// The task slice holds zero or more tasks that describe the operations
	// performed on the packagerevision. The are essentially a replayable history
	// of the packagerevision,
	//
	// Packagerevisions that were not created in Porch may have an
	// empty task list.
	//
	// Packagerevisions created and managed through Porch will always
	// have either an Init, Edit, or a Clone task as the first entry in their
	// task list. This represent packagerevisions created from scratch, based
	// a copy of a different revision in the same package, or a packagerevision
	// cloned from another package.
	// Each change to the packagerevision will result in a correspondig
	// task being added to the list of tasks. It will describe the operation
	// performed and will have a corresponding entry (commit or layer) in git
	// or oci.
	// The task slice describes the history of the packagerevision, so it
	// is an append only list (We might introduce some kind of compaction in the
	// future to keep the number of tasks at a reasonable number).
	Tasks []Task `json:"tasks,omitempty"`

	ReadinessGates []ReadinessGate `json:"readinessGates,omitempty"`

	PackageMetadata *PackageMetadata `json:"packageMetadata,omitempty"`
}

PackageRevisionSpec defines the desired state of PackageRevision

func (*PackageRevisionSpec) DeepCopy

func (in *PackageRevisionSpec) DeepCopy() *PackageRevisionSpec

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

func (*PackageRevisionSpec) DeepCopyInto

func (in *PackageRevisionSpec) DeepCopyInto(out *PackageRevisionSpec)

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

type PackageRevisionStatus

type PackageRevisionStatus struct {
	// UpstreamLock identifies the upstream data for this package.
	UpstreamLock *Locator `json:"upstreamLock,omitempty"`

	// SelfLock identifies the location of the current package's data.
	SelfLock *Locator `json:"selfLock,omitempty"`

	// PublishedBy is the identity of the user who approved the package revision.
	PublishedBy string `json:"publishedBy,omitempty"`

	// PublishedAt is the time when the package revision was approved.
	PublishedAt metav1.Time `json:"publishTimestamp,omitempty"`

	// Deployment is true if this is a deployment package (in a deployment repository).
	Deployment bool `json:"deployment,omitempty"`

	Conditions []Condition `json:"conditions,omitempty"`

	// ResourcesSizeBytes is the total file size, in bytes, of the package revision's resources.
	ResourcesSizeBytes int64 `json:"resourcesSizeBytes,omitempty"`
}

PackageRevisionStatus defines the observed state of PackageRevision

func (*PackageRevisionStatus) DeepCopy

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

func (*PackageRevisionStatus) DeepCopyInto

func (in *PackageRevisionStatus) DeepCopyInto(out *PackageRevisionStatus)

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

type PackageSpec

type PackageSpec struct {
	// PackageName identifies the package in the repository.
	PackageName string `json:"packageName,omitempty"`

	// RepositoryName is the name of the Repository object containing this package.
	RepositoryName string `json:"repository,omitempty"`
}

PackageSpec defines the desired state of Package

func (*PackageSpec) DeepCopy

func (in *PackageSpec) DeepCopy() *PackageSpec

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

func (*PackageSpec) DeepCopyInto

func (in *PackageSpec) DeepCopyInto(out *PackageSpec)

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

type PackageStatus

type PackageStatus struct {
	// LatestRevision identifies the package revision that is the latest
	// published package revision belonging to this package. Latest is determined by comparing
	// packages that have valid semantic version as their revision. In case of git backend, branch tracking
	// revisions like "main" and in case of oci backend, revisions tracking "latest" are not considered during
	// selection of the latest revision.
	LatestRevision int `json:"latestRevision,omitempty"`
}

PackageStatus defines the observed state of Package

func (*PackageStatus) DeepCopy

func (in *PackageStatus) DeepCopy() *PackageStatus

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

func (*PackageStatus) DeepCopyInto

func (in *PackageStatus) DeepCopyInto(out *PackageStatus)

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

type PackageUpgradeTaskSpec

type PackageUpgradeTaskSpec struct {
	// `OldUpstream` is the reference to the original upstream package revision that is
	// the common ancestor of the local package and the new upstream package revision.
	OldUpstream PackageRevisionRef `json:"oldUpstreamRef,omitempty"`

	// `NewUpstream` is the reference to the new upstream package revision that the
	// local package will be upgraded to.
	NewUpstream PackageRevisionRef `json:"newUpstreamRef,omitempty"`

	// `LocalPackageRevisionRef` is the reference to the local package revision that
	// contains all the local changes on top of the `OldUpstream` package revision.
	LocalPackageRevisionRef PackageRevisionRef `json:"localPackageRevisionRef,omitempty"`

	// 	Defines which strategy should be used to update the package. It defaults to 'resource-merge'.
	//  * resource-merge: Perform a structural comparison of the original /
	//    updated resources, and merge the changes into the local package.
	//  * fast-forward: Fail without updating if the local package was modified
	//    since it was fetched.
	//  * force-delete-replace: Wipe all the local changes to the package and replace
	//    it with the remote version.
	//  * copy-merge: Copy all the remote changes to the local package.
	Strategy PackageMergeStrategy `json:"strategy,omitempty"`
}

func (*PackageUpgradeTaskSpec) DeepCopy

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

func (*PackageUpgradeTaskSpec) DeepCopyInto

func (in *PackageUpgradeTaskSpec) DeepCopyInto(out *PackageUpgradeTaskSpec)

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

type ParentReference

type ParentReference struct {

	// Name is the name of the parent PackageRevision
	Name string `json:"name"`
}

ParentReference is a reference to a parent package

func (*ParentReference) DeepCopy

func (in *ParentReference) DeepCopy() *ParentReference

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

func (*ParentReference) DeepCopyInto

func (in *ParentReference) DeepCopyInto(out *ParentReference)

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

type PkgRevFieldSelector

type PkgRevFieldSelector string
const (
	PkgRevSelectorName          PkgRevFieldSelector = "metadata.name"
	PkgRevSelectorNamespace     PkgRevFieldSelector = "metadata.namespace"
	PkgRevSelectorRevision      PkgRevFieldSelector = "spec.revision"
	PkgRevSelectorPackageName   PkgRevFieldSelector = "spec.packageName"
	PkgRevSelectorRepository    PkgRevFieldSelector = "spec.repository"
	PkgRevSelectorWorkspaceName PkgRevFieldSelector = "spec.workspaceName"
	PkgRevSelectorLifecycle     PkgRevFieldSelector = "spec.lifecycle"
)

type PorchPackage

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

	Spec   PackageSpec   `json:"spec,omitempty"`
	Status PackageStatus `json:"status,omitempty"`
}

Package +genclient +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object +k8s:openapi-gen=true +kubebuilder:storageversion

func (*PorchPackage) DeepCopy

func (in *PorchPackage) DeepCopy() *PorchPackage

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

func (*PorchPackage) DeepCopyInto

func (in *PorchPackage) DeepCopyInto(out *PorchPackage)

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

func (*PorchPackage) DeepCopyObject

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

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

type PorchPackageList

type PorchPackageList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`

	Items []PorchPackage `json:"items"`
}

PackageList +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

func (*PorchPackageList) DeepCopy

func (in *PorchPackageList) DeepCopy() *PorchPackageList

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

func (*PorchPackageList) DeepCopyInto

func (in *PorchPackageList) DeepCopyInto(out *PorchPackageList)

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

func (*PorchPackageList) DeepCopyObject

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

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

type ReadinessGate

type ReadinessGate struct {
	ConditionType string `json:"conditionType,omitempty"`
}

func (*ReadinessGate) DeepCopy

func (in *ReadinessGate) DeepCopy() *ReadinessGate

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

func (*ReadinessGate) DeepCopyInto

func (in *ReadinessGate) DeepCopyInto(out *ReadinessGate)

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

type RenderStatus

type RenderStatus struct {
	Result ResultList `json:"result,omitempty"`
	Err    string     `json:"error"`
}

RenderStatus represents the result of performing render operation on a package resources.

func (*RenderStatus) DeepCopy

func (in *RenderStatus) DeepCopy() *RenderStatus

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

func (*RenderStatus) DeepCopyInto

func (in *RenderStatus) DeepCopyInto(out *RenderStatus)

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

type RepositoryRef

type RepositoryRef struct {
	// Name of the Repository resource referenced.
	Name string `json:"name"`
}

RepositoryRef identifies a reference to a Repository resource.

func (*RepositoryRef) DeepCopy

func (in *RepositoryRef) DeepCopy() *RepositoryRef

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

func (*RepositoryRef) DeepCopyInto

func (in *RepositoryRef) DeepCopyInto(out *RepositoryRef)

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

type RepositoryType

type RepositoryType string
const (
	RepositoryTypeGit RepositoryType = "git"
	RepositoryTypeOCI RepositoryType = "oci"
)

type ResourceIdentifier

type ResourceIdentifier struct {
	metav1.TypeMeta `json:",inline"`
	NameMeta        `json:",inline"`
}

ResourceIdentifier contains the information needed to uniquely identify a resource in a cluster.

func (*ResourceIdentifier) DeepCopy

func (in *ResourceIdentifier) DeepCopy() *ResourceIdentifier

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

func (*ResourceIdentifier) DeepCopyInto

func (in *ResourceIdentifier) DeepCopyInto(out *ResourceIdentifier)

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

type Result

type Result struct {
	// Image is the full name of the image that generates this result
	// Image and Exec are mutually exclusive
	Image string `json:"image,omitempty"`
	// ExecPath is the absolute OS-specific path to the executable file.
	// If user provides an executable file with commands, ExecPath should
	// contain the entire input string.
	ExecPath string `json:"exec,omitempty"`
	// TODO(droot): This is required for making structured results subpackage aware.
	// Enable this once test harness supports filepath based assertions.
	// Pkg is OS specific Absolute path to the package.
	// Pkg string `yaml:"pkg,omitempty"`
	// Stderr is the content in function stderr
	Stderr string `json:"stderr,omitempty"`
	// ExitCode is the exit code from running the function
	ExitCode int `json:"exitCode"`
	// Results is the list of results for the function
	Results []ResultItem `json:"results,omitempty"`
}

Result contains the structured result from an individual function

func (*Result) DeepCopy

func (in *Result) DeepCopy() *Result

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

func (*Result) DeepCopyInto

func (in *Result) DeepCopyInto(out *Result)

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

type ResultItem

type ResultItem struct {
	// Message is a human readable message. This field is required.
	Message string `json:"message,omitempty"`

	// Severity is the severity of this result
	Severity string `json:"severity,omitempty"`

	// ResourceRef is a reference to a resource.
	// Required fields: apiVersion, kind, name.
	ResourceRef *ResourceIdentifier `json:"resourceRef,omitempty"`

	// Field is a reference to the field in a resource this result refers to
	Field *Field `json:"field,omitempty"`

	// File references a file containing the resource this result refers to
	File *File `json:"file,omitempty"`

	// Tags is an unstructured key value map stored with a result that may be set
	// by external tools to store and retrieve arbitrary metadata
	Tags map[string]string `json:"tags,omitempty"`
}

ResultItem defines a validation result

func (*ResultItem) DeepCopy

func (in *ResultItem) DeepCopy() *ResultItem

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

func (*ResultItem) DeepCopyInto

func (in *ResultItem) DeepCopyInto(out *ResultItem)

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

type ResultList

type ResultList struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// ExitCode is the exit code of kpt command
	ExitCode int `json:"exitCode"`
	// Items contain a list of function result
	Items []*Result `json:"items,omitempty"`
}

ResultList contains aggregated results from multiple functions +kubebuilder:storageversion

func (*ResultList) DeepCopy

func (in *ResultList) DeepCopy() *ResultList

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

func (*ResultList) DeepCopyInto

func (in *ResultList) DeepCopyInto(out *ResultList)

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

type SecretRef

type SecretRef struct {
	// Name of the secret. The secret is expected to be located in the same namespace as the resource containing the reference.
	Name string `json:"name"`
}

func (*SecretRef) DeepCopy

func (in *SecretRef) DeepCopy() *SecretRef

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

func (*SecretRef) DeepCopyInto

func (in *SecretRef) DeepCopyInto(out *SecretRef)

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

type Selector

type Selector struct {
	// APIVersion of the target resources
	APIVersion string `json:"apiVersion,omitempty"`
	// Kind of the target resources
	Kind string `json:"kind,omitempty"`
	// Name of the target resources
	Name string `json:"name,omitempty"`
	// Namespace of the target resources
	Namespace string `json:"namespace,omitempty"`
}

Selector corresponds to the `--match-???` set of flags of the `kpt fn eval` command: See https://kpt.dev/reference/cli/fn/eval/ for additional information.

func (*Selector) DeepCopy

func (in *Selector) DeepCopy() *Selector

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

func (*Selector) DeepCopyInto

func (in *Selector) DeepCopyInto(out *Selector)

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

type Task

type Task struct {
	Type    TaskType                `json:"type"`
	Init    *PackageInitTaskSpec    `json:"init,omitempty"`
	Clone   *PackageCloneTaskSpec   `json:"clone,omitempty"`
	Edit    *PackageEditTaskSpec    `json:"edit,omitempty"`
	Upgrade *PackageUpgradeTaskSpec `json:"upgrade,omitempty"`
}

func (*Task) DeepCopy

func (in *Task) DeepCopy() *Task

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

func (*Task) DeepCopyInto

func (in *Task) DeepCopyInto(out *Task)

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

type TaskResult

type TaskResult struct {
	Task         *Task         `json:"task"`
	RenderStatus *RenderStatus `json:"renderStatus,omitempty"`
}

func (*TaskResult) DeepCopy

func (in *TaskResult) DeepCopy() *TaskResult

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

func (*TaskResult) DeepCopyInto

func (in *TaskResult) DeepCopyInto(out *TaskResult)

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

type TaskType

type TaskType string
const (
	TaskTypeInit    TaskType = "init"
	TaskTypeClone   TaskType = "clone"
	TaskTypeEdit    TaskType = "edit"
	TaskTypeUpgrade TaskType = "upgrade"
	TaskTypeRender  TaskType = "render"
	TaskTypePush    TaskType = "push"
	TaskTypeNone    TaskType = ""
)

type UpstreamPackage

type UpstreamPackage struct {
	// Type of the repository (i.e. git, OCI). If empty, `upstreamRef` will be used.
	Type RepositoryType `json:"type,omitempty"`

	// Git upstream package specification. Required if `type` is `git`. Must be unspecified if `type` is not `git`.
	Git *GitPackage `json:"git,omitempty"`

	// OCI upstream package specification. Required if `type` is `oci`. Must be unspecified if `type` is not `oci`.
	Oci *OciPackage `json:"oci,omitempty"`

	// UpstreamRef is the reference to the package from a registered repository rather than external package.
	UpstreamRef *PackageRevisionRef `json:"upstreamRef,omitempty"`
}

UpstreamRepository repository may be specified directly or by referencing another Repository resource.

func (*UpstreamPackage) DeepCopy

func (in *UpstreamPackage) DeepCopy() *UpstreamPackage

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

func (*UpstreamPackage) DeepCopyInto

func (in *UpstreamPackage) DeepCopyInto(out *UpstreamPackage)

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

Directories

Path Synopsis
+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/kptdev/porch/api/porch +k8s:defaulter-gen=TypeMeta +groupName=porch.kpt.dev
+k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/kptdev/porch/api/porch +k8s:defaulter-gen=TypeMeta +groupName=porch.kpt.dev

Jump to

Keyboard shortcuts

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