v1alpha1

package
v0.0.0-...-b25b198 Latest Latest
Warning

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

Go to latest
Published: Apr 28, 2023 License: Apache-2.0 Imports: 13 Imported by: 17

Documentation

Overview

Package v1alpha1 contains the v1alpha1 API implementation. +groupName=run.tanzu.vmware.com +k8s:deepcopy-gen=package +k8s:conversion-gen=github.com/vmware-tanzu/tanzu-framework/apis/run/v1alpha3

Package v1alpha1 contains API Schema definitions for the run v1alpha1 API group +kubebuilder:object:generate=true +groupName=run.tanzu.vmware.com

Index

Constants

View Source
const (
	// ConditionCompatible indicates the condition is compatible.
	ConditionCompatible = "Compatible"

	// ConditionUpdatesAvailable indicates the condition is an updates is available.
	ConditionUpdatesAvailable = "UpdatesAvailable"

	// ConditionUpgradeAvailable (deprecated) indicates the condition is an updates is available.
	ConditionUpgradeAvailable = "UpgradeAvailable"
)

Variables

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

func Convert_v1alpha1_TanzuKubernetesReleaseList_To_v1alpha3_TanzuKubernetesReleaseList

func Convert_v1alpha1_TanzuKubernetesReleaseList_To_v1alpha3_TanzuKubernetesReleaseList(in *TanzuKubernetesReleaseList, out *v1alpha3.TanzuKubernetesReleaseList, s conversion.Scope) error

Convert_v1alpha1_TanzuKubernetesReleaseList_To_v1alpha3_TanzuKubernetesReleaseList is an autogenerated conversion function.

func Convert_v1alpha1_TanzuKubernetesReleaseSpec_To_v1alpha3_TanzuKubernetesReleaseSpec

func Convert_v1alpha1_TanzuKubernetesReleaseSpec_To_v1alpha3_TanzuKubernetesReleaseSpec(in *TanzuKubernetesReleaseSpec, out *v1alpha3.TanzuKubernetesReleaseSpec, s apiconversion.Scope) error

Convert_v1alpha1_TanzuKubernetesReleaseSpec_To_v1alpha3_TanzuKubernetesReleaseSpec will convert the compatible types in TanzuKubernetesReleaseSpec v1alpha1 to v1alpha3 equivalent. nolint:revive,stylecheck // Generated conversion stubs have underscores in function names.

func Convert_v1alpha1_TanzuKubernetesReleaseStatus_To_v1alpha3_TanzuKubernetesReleaseStatus

func Convert_v1alpha1_TanzuKubernetesReleaseStatus_To_v1alpha3_TanzuKubernetesReleaseStatus(in *TanzuKubernetesReleaseStatus, out *v1alpha3.TanzuKubernetesReleaseStatus, s conversion.Scope) error

Convert_v1alpha1_TanzuKubernetesReleaseStatus_To_v1alpha3_TanzuKubernetesReleaseStatus is an autogenerated conversion function.

func Convert_v1alpha1_TanzuKubernetesRelease_To_v1alpha3_TanzuKubernetesRelease

func Convert_v1alpha1_TanzuKubernetesRelease_To_v1alpha3_TanzuKubernetesRelease(in *TanzuKubernetesRelease, out *v1alpha3.TanzuKubernetesRelease, s conversion.Scope) error

Convert_v1alpha1_TanzuKubernetesRelease_To_v1alpha3_TanzuKubernetesRelease is an autogenerated conversion function.

func Convert_v1alpha3_TanzuKubernetesReleaseList_To_v1alpha1_TanzuKubernetesReleaseList

func Convert_v1alpha3_TanzuKubernetesReleaseList_To_v1alpha1_TanzuKubernetesReleaseList(in *v1alpha3.TanzuKubernetesReleaseList, out *TanzuKubernetesReleaseList, s conversion.Scope) error

Convert_v1alpha3_TanzuKubernetesReleaseList_To_v1alpha1_TanzuKubernetesReleaseList is an autogenerated conversion function.

func Convert_v1alpha3_TanzuKubernetesReleaseSpec_To_v1alpha1_TanzuKubernetesReleaseSpec

func Convert_v1alpha3_TanzuKubernetesReleaseSpec_To_v1alpha1_TanzuKubernetesReleaseSpec(in *v1alpha3.TanzuKubernetesReleaseSpec, out *TanzuKubernetesReleaseSpec, s apiconversion.Scope) error

Convert_v1alpha3_TanzuKubernetesReleaseSpec_To_v1alpha1_TanzuKubernetesReleaseSpec will convert the compatible types in TanzuKubernetesReleaseSpec v1alpha3 to v1alpha1 equivalent. nolint:revive,stylecheck // Generated conversion stubs have underscores in function names.

func Convert_v1alpha3_TanzuKubernetesReleaseStatus_To_v1alpha1_TanzuKubernetesReleaseStatus

func Convert_v1alpha3_TanzuKubernetesReleaseStatus_To_v1alpha1_TanzuKubernetesReleaseStatus(in *v1alpha3.TanzuKubernetesReleaseStatus, out *TanzuKubernetesReleaseStatus, s conversion.Scope) error

Convert_v1alpha3_TanzuKubernetesReleaseStatus_To_v1alpha1_TanzuKubernetesReleaseStatus is an autogenerated conversion function.

func Convert_v1alpha3_TanzuKubernetesRelease_To_v1alpha1_TanzuKubernetesRelease

func Convert_v1alpha3_TanzuKubernetesRelease_To_v1alpha1_TanzuKubernetesRelease(in *v1alpha3.TanzuKubernetesRelease, out *TanzuKubernetesRelease, s conversion.Scope) error

Convert_v1alpha3_TanzuKubernetesRelease_To_v1alpha1_TanzuKubernetesRelease is an autogenerated conversion function.

func FuzzTKRSpec

func FuzzTKRSpec(tkrSpec *TanzuKubernetesReleaseSpec, c fuzz.Continue)

func RegisterConversions

func RegisterConversions(s *runtime.Scheme) error

RegisterConversions adds conversion functions to the given scheme. Public to allow building arbitrary schemes.

Types

type Capability

type Capability struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the capability spec that has cluster queries.
	Spec CapabilitySpec `json:"spec,omitempty"`
	// Status is the capability status that has results of cluster queries.
	Status CapabilityStatus `json:"status,omitempty"`
}

Capability is the Schema for the capabilities API

func (*Capability) DeepCopy

func (in *Capability) DeepCopy() *Capability

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

func (*Capability) DeepCopyInto

func (in *Capability) DeepCopyInto(out *Capability)

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

func (*Capability) DeepCopyObject

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

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

type CapabilityList

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

CapabilityList contains a list of Capability

func (*CapabilityList) DeepCopy

func (in *CapabilityList) DeepCopy() *CapabilityList

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

func (*CapabilityList) DeepCopyInto

func (in *CapabilityList) DeepCopyInto(out *CapabilityList)

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

func (*CapabilityList) DeepCopyObject

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

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

type CapabilitySpec

type CapabilitySpec struct {
	// ServiceAccountName is the name of the service account with which requests
	// are made to the API server for evaluating queries.
	// Service account should exist in the same namespace as this resource.
	// When this field is not specified, a default service account with only the
	// ability to execute GVR queries is used.
	// +optional
	ServiceAccountName string `json:"serviceAccountName"`
	// Queries specifies set of queries that are evaluated.
	// +listType=map
	// +listMapKey=name
	Queries []Query `json:"queries"`
}

CapabilitySpec defines the desired state of Capability.

func (*CapabilitySpec) DeepCopy

func (in *CapabilitySpec) DeepCopy() *CapabilitySpec

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

func (*CapabilitySpec) DeepCopyInto

func (in *CapabilitySpec) DeepCopyInto(out *CapabilitySpec)

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

type CapabilityStatus

type CapabilityStatus struct {
	// Results represents the results of all the queries specified in the spec.
	// +listType=map
	// +listMapKey=name
	Results []Result `json:"results"`
}

CapabilityStatus defines the observed state of Capability

func (*CapabilityStatus) DeepCopy

func (in *CapabilityStatus) DeepCopy() *CapabilityStatus

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

func (*CapabilityStatus) DeepCopyInto

func (in *CapabilityStatus) DeepCopyInto(out *CapabilityStatus)

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

type ContainerImage

type ContainerImage struct {
	// Repository is the container image repository used by this image. It MUST be a DNS-compatible name.
	// +optional
	Repository string `json:"repository,omitempty"`

	// Name is the container image name without the repository prefix.
	// It MUST be a valid URI path, MAY contain zero or more '/', and SHOULD NOT start or end with '/'.
	Name string `json:"name"`

	// Tag is the container image version tag. It is the suffix coming after ':' in a fully qualified image name.
	// +optional
	Tag string `json:"tag,omitempty"`
}

ContainerImage is a struct representing a single fully qualified container image name, constructed as `{Repository}/{Name}:{Tag}`.

func (*ContainerImage) DeepCopy

func (in *ContainerImage) DeepCopy() *ContainerImage

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

func (*ContainerImage) DeepCopyInto

func (in *ContainerImage) DeepCopyInto(out *ContainerImage)

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

func (ContainerImage) String

func (ci ContainerImage) String() string

type Query

type Query struct {
	// Name is the unique name of the query.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// GroupVersionResources evaluates a slice of GVR queries.
	// +listType=map
	// +listMapKey=name
	// +optional
	GroupVersionResources []QueryGVR `json:"groupVersionResources,omitempty"`
	// Objects evaluates a slice of Object queries.
	// +listType=map
	// +listMapKey=name
	// +optional
	Objects []QueryObject `json:"objects,omitempty"`
	// PartialSchemas evaluates a slice of PartialSchema queries.
	// +listType=map
	// +listMapKey=name
	// +optional
	PartialSchemas []QueryPartialSchema `json:"partialSchemas,omitempty"`
}

Query is a logical grouping of GVR, Object and PartialSchema queries.

func (*Query) DeepCopy

func (in *Query) DeepCopy() *Query

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

func (*Query) DeepCopyInto

func (in *Query) DeepCopyInto(out *Query)

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

type QueryGVR

type QueryGVR struct {
	// Name is the unique name of the query.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// Group is the API group to check for in the cluster.
	// +optional
	Group string `json:"group"`
	// Versions is the slice of versions to check for in the specified API group.
	// +optional
	Versions []string `json:"versions,omitempty"`
	// Resource is the API resource to check for given an API group and a slice of versions.
	// Specifying a Resource requires at least one version to be specified in Versions.
	// +optional
	Resource string `json:"resource,omitempty"`
}

QueryGVR queries for an API group with the optional ability to check for API versions and resource.

func (*QueryGVR) DeepCopy

func (in *QueryGVR) DeepCopy() *QueryGVR

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

func (*QueryGVR) DeepCopyInto

func (in *QueryGVR) DeepCopyInto(out *QueryGVR)

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

type QueryObject

type QueryObject struct {
	// Name is the unique name of the query.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// ObjectReference is the ObjectReference to check for in the cluster.
	// +kubebuilder:validation:Required
	ObjectReference corev1.ObjectReference `json:"objectReference"`
	// WithAnnotations are the annotations whose presence is checked in the object.
	// The query succeeds only if all the annotations specified exists.
	// +optional
	WithAnnotations map[string]string `json:"withAnnotations,omitempty"`
	// WithAnnotations are the annotations whose absence is checked in the object.
	// The query succeeds only if all the annotations specified do not exist.
	// +optional
	WithoutAnnotations map[string]string `json:"withoutAnnotations,omitempty"`
}

QueryObject represents any runtime.Object that could exist in a cluster with the ability to check for annotations.

func (*QueryObject) DeepCopy

func (in *QueryObject) DeepCopy() *QueryObject

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

func (*QueryObject) DeepCopyInto

func (in *QueryObject) DeepCopyInto(out *QueryObject)

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

type QueryPartialSchema

type QueryPartialSchema struct {
	// Name is the unique name of the query.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// PartialSchema is the partial OpenAPI schema that will be matched in a cluster.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	PartialSchema string `json:"partialSchema"`
}

QueryPartialSchema queries for any OpenAPI schema that may exist on a cluster.

func (*QueryPartialSchema) DeepCopy

func (in *QueryPartialSchema) DeepCopy() *QueryPartialSchema

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

func (*QueryPartialSchema) DeepCopyInto

func (in *QueryPartialSchema) DeepCopyInto(out *QueryPartialSchema)

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

type QueryResult

type QueryResult struct {
	// Name is the name of the query in spec whose result this struct represents.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// Found is a boolean which indicates if the query condition succeeded.
	// +optional
	Found bool `json:"found"`
	// Error indicates if an error occurred while processing the query.
	// +optional
	Error bool `json:"error,omitempty"`
	// ErrorDetail represents the error detail, if an error occurred.
	// +optional
	ErrorDetail string `json:"errorDetail,omitempty"`
	// NotFoundReason provides the reason if the query condition fails.
	// This is non-empty when Found is false.
	// +optional
	NotFoundReason string `json:"notFoundReason,omitempty"`
}

QueryResult represents the result of a single query.

func (*QueryResult) DeepCopy

func (in *QueryResult) DeepCopy() *QueryResult

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

func (*QueryResult) DeepCopyInto

func (in *QueryResult) DeepCopyInto(out *QueryResult)

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

type Result

type Result struct {
	// Name is the unique name of the query.
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:MinLength:=1
	Name string `json:"name"`
	// GroupVersionResources represents results of GVR queries in spec.
	// +listType=map
	// +listMapKey=name
	// +optional
	GroupVersionResources []QueryResult `json:"groupVersionResources,omitempty"`
	// Objects represents results of Object queries in spec.
	// +listType=map
	// +listMapKey=name
	// +optional
	Objects []QueryResult `json:"objects,omitempty"`
	// PartialSchemas represents results of PartialSchema queries in spec.
	// +listType=map
	// +listMapKey=name
	// +optional
	PartialSchemas []QueryResult `json:"partialSchemas,omitempty"`
}

Result represents the results of queries in Query.

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 TanzuKubernetesRelease

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

	Spec   TanzuKubernetesReleaseSpec   `json:"spec,omitempty"`
	Status TanzuKubernetesReleaseStatus `json:"status,omitempty"`
}

TanzuKubernetesRelease is the schema for the tanzukubernetesreleases API. TanzuKubernetesRelease objects represent Kubernetes releases available via TKG, which can be used to create TanzuKubernetesCluster instances. TKRs are immutable to end-users. They are created and managed by TKG to provide discovery of Kubernetes releases to TKG users.

+kubebuilder:object:root=true +kubebuilder:resource:path=tanzukubernetesreleases,scope=Cluster,shortName=tkr +kubebuilder:storageversion +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Version",type=string,JSONPath=.spec.version +kubebuilder:printcolumn:name="Compatible",type=string,JSONPath=.status.conditions[?(@.type=='Compatible')].status +kubebuilder:printcolumn:name="Created",type="date",JSONPath=.metadata.creationTimestamp

func (*TanzuKubernetesRelease) ConvertFrom

func (spoke *TanzuKubernetesRelease) ConvertFrom(hubRaw conversion.Hub) error

func (*TanzuKubernetesRelease) ConvertTo

func (spoke *TanzuKubernetesRelease) ConvertTo(hubRaw conversion.Hub) error

func (*TanzuKubernetesRelease) DeepCopy

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

func (*TanzuKubernetesRelease) DeepCopyInto

func (in *TanzuKubernetesRelease) DeepCopyInto(out *TanzuKubernetesRelease)

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

func (*TanzuKubernetesRelease) DeepCopyObject

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

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

func (*TanzuKubernetesRelease) GetConditions

func (r *TanzuKubernetesRelease) GetConditions() clusterv1.Conditions

GetConditions implements capi conditions Getter interface

func (*TanzuKubernetesRelease) SetConditions

func (r *TanzuKubernetesRelease) SetConditions(conditions clusterv1.Conditions)

SetConditions implements capi conditions Setter interface

type TanzuKubernetesReleaseList

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

TanzuKubernetesReleaseList contains a list of TanzuKubernetesRelease

func (*TanzuKubernetesReleaseList) ConvertFrom

func (dst *TanzuKubernetesReleaseList) ConvertFrom(srcRaw conversion.Hub) error

func (*TanzuKubernetesReleaseList) ConvertTo

func (src *TanzuKubernetesReleaseList) ConvertTo(dstRaw conversion.Hub) error

func (*TanzuKubernetesReleaseList) DeepCopy

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

func (*TanzuKubernetesReleaseList) DeepCopyInto

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

func (*TanzuKubernetesReleaseList) DeepCopyObject

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

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

type TanzuKubernetesReleaseSpec

type TanzuKubernetesReleaseSpec struct {
	// Version is the fully qualified Semantic Versioning conformant version of the TanzuKubernetesRelease.
	// Version MUST be unique across all TanzuKubernetesRelease objects.
	Version string `json:"version"`

	// KubernetesVersion is the fully qualified Semantic Versioning conformant version of Kubernetes shipped by this TKR.
	// The same KubernetesVersion MAY be shipped by different TKRs.
	// +optional
	KubernetesVersion string `json:"kubernetesVersion,omitempty"`

	// Repository is the container image repository for Kubernetes core images, such as kube-apiserver, kube-proxy, etc.
	// It MUST be a DNS-compatible name.
	// +optional
	Repository string `json:"repository,omitempty"`

	// Images is the list of (other than Kubernetes core) essential container images shipped by this TKR (e.g. coredns, etcd).
	// +optional
	Images []ContainerImage `json:"images,omitempty"`

	// NodeImageRef refers to an object representing the image used to create TKC nodes (e.g. VirtualMachineImage).
	// +optional
	NodeImageRef *corev1.ObjectReference `json:"nodeImageRef,omitempty"`
}

TanzuKubernetesReleaseSpec defines the desired state of TanzuKubernetesRelease

func (*TanzuKubernetesReleaseSpec) DeepCopy

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

func (*TanzuKubernetesReleaseSpec) DeepCopyInto

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

type TanzuKubernetesReleaseStatus

type TanzuKubernetesReleaseStatus struct {
	Conditions []clusterv1.Condition `json:"conditions,omitempty"`
}

TanzuKubernetesReleaseStatus defines the observed state of TanzuKubernetesRelease

func (*TanzuKubernetesReleaseStatus) DeepCopy

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

func (*TanzuKubernetesReleaseStatus) DeepCopyInto

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

Directories

Path Synopsis
Package upgrade contains upgrade related api structs
Package upgrade contains upgrade related api structs

Jump to

Keyboard shortcuts

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