v1alpha1

package
v0.15.0 Latest Latest
Warning

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

Go to latest
Published: Dec 14, 2021 License: Apache-2.0 Imports: 20 Imported by: 9

Documentation

Overview

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

Index

Constants

View Source
const (
	// FeatureCli allows a feature to be set at the CLI level (globally) rather than for a single plugin
	FeatureCli string = "cli"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "config.tanzu.vmware.com", Version: "v1alpha1"}

	// GroupVersionKind has information about group, version and kind of this object.
	GroupVersionKind = GroupVersion.WithKind("ClientConfig")

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

type CLIOptions struct {
	// Repositories are the plugin repositories.
	Repositories []PluginRepository `json:"repositories,omitempty" yaml:"repositories"`
	// DiscoverySources determines from where to discover stand-alone plugins
	DiscoverySources []PluginDiscovery `json:"discoverySources,omitempty" yaml:"discoverySources"`
	// UnstableVersionSelector determined which version tags are allowed
	UnstableVersionSelector VersionSelectorLevel `json:"unstableVersionSelector,omitempty" yaml:"unstableVersionSelector"`
}

CLIOptions are options for the CLI.

func (*CLIOptions) DeepCopy

func (in *CLIOptions) DeepCopy() *CLIOptions

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

func (*CLIOptions) DeepCopyInto

func (in *CLIOptions) DeepCopyInto(out *CLIOptions)

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

type ClientConfig

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

	// KnownServers available.
	KnownServers []*Server `json:"servers,omitempty" yaml:"servers"`

	// CurrentServer in use.
	CurrentServer string `json:"current,omitempty" yaml:"current"`

	// ClientOptions are client specific options.
	ClientOptions *ClientOptions `json:"clientOptions,omitempty" yaml:"clientOptions"`
}

ClientConfig is the Schema for the configs API

func (*ClientConfig) DeepCopy

func (in *ClientConfig) DeepCopy() *ClientConfig

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

func (*ClientConfig) DeepCopyInto

func (in *ClientConfig) DeepCopyInto(out *ClientConfig)

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

func (*ClientConfig) DeepCopyObject

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

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

func (*ClientConfig) GetCurrentServer

func (c *ClientConfig) GetCurrentServer() (*Server, error)

GetCurrentServer returns the current server/

func (*ClientConfig) GetEnvConfigurations added in v0.11.0

func (c *ClientConfig) GetEnvConfigurations() map[string]string

GetEnvConfigurations returns a map of environment variables to values it returns nil if configuration is not yet defined

func (*ClientConfig) IsConfigFeatureActivated added in v0.8.0

func (c *ClientConfig) IsConfigFeatureActivated(featurePath string) (bool, error)

IsConfigFeatureActivated return true if the feature is activated, false if not. An error if the featurePath is malformed

func (*ClientConfig) SetUnstableVersionSelector

func (c *ClientConfig) SetUnstableVersionSelector(f VersionSelectorLevel)

SetUnstableVersionSelector will help determine the unstable versions supported In order of restrictiveness: "all" -> "alpha" -> "experimental" -> "none" none: return stable versions only. the default for both the config and the old flag. alpha: only versions tagged with -alpha experimental: all pre-release versions without +build semver data all: return all unstable versions.

func (*ClientConfig) SplitFeaturePath added in v0.8.0

func (c *ClientConfig) SplitFeaturePath(featurePath string) (string, string, error)

SplitFeaturePath splits a features path into the pluginName and the featureName For example "features.management-cluster.dual-stack" returns "management-cluster", "dual-stack" An error results from a malformed path, including any path that does not start with "features."

type ClientConfigList

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

ClientConfigList contains a list of ClientConfig

func (*ClientConfigList) DeepCopy

func (in *ClientConfigList) DeepCopy() *ClientConfigList

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

func (*ClientConfigList) DeepCopyInto

func (in *ClientConfigList) DeepCopyInto(out *ClientConfigList)

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

func (*ClientConfigList) DeepCopyObject

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

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

type ClientOptions

type ClientOptions struct {
	// CLI options specific to the CLI.
	CLI      *CLIOptions           `json:"cli,omitempty" yaml:"cli"`
	Features map[string]FeatureMap `json:"features,omitempty" yaml:"features"`
	Env      map[string]string     `json:"env,omitempty" yaml:"env"`
}

ClientOptions are the client specific options.

func (*ClientOptions) DeepCopy

func (in *ClientOptions) DeepCopy() *ClientOptions

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

func (*ClientOptions) DeepCopyInto

func (in *ClientOptions) DeepCopyInto(out *ClientOptions)

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

type EnvMap added in v0.11.0

type EnvMap map[string]string

EnvMap is simply a hash table, but needs an explicit type to be an object in another hash map (cf ClientOptions.Env)

func (EnvMap) DeepCopy added in v0.14.0

func (in EnvMap) DeepCopy() EnvMap

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

func (EnvMap) DeepCopyInto added in v0.14.0

func (in EnvMap) DeepCopyInto(out *EnvMap)

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

type Feature

type Feature struct {
	Status            FeatureStatus `json:"status,omitempty"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	Spec              FeatureSpec `json:"spec,omitempty"`
	metav1.TypeMeta   `json:",inline"`
}

Feature is the Schema for the features API +kubebuilder:object:root=true +kubebuilder:resource:scope=Cluster +kubebuilder:printcolumn:name="Activated",type=boolean,JSONPath=.spec.activated +kubebuilder:printcolumn:name="Description",type=string,JSONPath=.spec.description +kubebuilder:printcolumn:name="Immutable",type=boolean,JSONPath=.spec.immutable +kubebuilder:printcolumn:name="Maturity",type=string,JSONPath=.spec.maturity

func (*Feature) DeepCopy

func (in *Feature) DeepCopy() *Feature

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

func (*Feature) DeepCopyInto

func (in *Feature) DeepCopyInto(out *Feature)

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

func (*Feature) DeepCopyObject

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

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

type FeatureGate

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

	// Spec is the specification for gating features.
	Spec FeatureGateSpec `json:"spec,omitempty"`
	// Status reports activation state and availability of features in the system.
	Status FeatureGateStatus `json:"status,omitempty"`
}

FeatureGate is the Schema for the featuregates API

func (*FeatureGate) DeepCopy

func (in *FeatureGate) DeepCopy() *FeatureGate

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

func (*FeatureGate) DeepCopyInto

func (in *FeatureGate) DeepCopyInto(out *FeatureGate)

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

func (*FeatureGate) DeepCopyObject

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

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

func (*FeatureGate) SetupWebhookWithManager

func (r *FeatureGate) SetupWebhookWithManager(mgr ctrl.Manager) error

SetupWebhookWithManager adds the webhook to the manager.

func (*FeatureGate) ValidateCreate

func (r *FeatureGate) ValidateCreate() error

ValidateCreate implements webhook.Validator so a webhook will be registered for the type

func (*FeatureGate) ValidateDelete

func (r *FeatureGate) ValidateDelete() error

ValidateDelete implements webhook.Validator so a webhook will be registered for the type

func (*FeatureGate) ValidateUpdate

func (r *FeatureGate) ValidateUpdate(old runtime.Object) error

ValidateUpdate implements webhook.Validator so a webhook will be registered for the type

type FeatureGateList

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

FeatureGateList contains a list of FeatureGate

func (*FeatureGateList) DeepCopy

func (in *FeatureGateList) DeepCopy() *FeatureGateList

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

func (*FeatureGateList) DeepCopyInto

func (in *FeatureGateList) DeepCopyInto(out *FeatureGateList)

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

func (*FeatureGateList) DeepCopyObject

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

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

type FeatureGateSpec

type FeatureGateSpec struct {
	// NamespaceSelector is a selector to specify namespaces for which this feature gate applies.
	// Use an empty LabelSelector to match all namespaces.
	NamespaceSelector metav1.LabelSelector `json:"namespaceSelector"`
	// Features is a slice of FeatureReference to gate features.
	// The Feature resource specified may or may not be present in the system. If the Feature is present, the
	// FeatureGate controller and webhook sets the specified activation state only if the Feature is discoverable and
	// its immutability constraint is satisfied. If the Feature is not present, the activation intent is applied when
	// the Feature resource appears in the system. The actual activation state of the Feature is reported in the status.
	// +listType=map
	// +listMapKey=name
	Features []FeatureReference `json:"features,omitempty"`
}

FeatureGateSpec defines the desired state of FeatureGate

func (*FeatureGateSpec) DeepCopy

func (in *FeatureGateSpec) DeepCopy() *FeatureGateSpec

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

func (*FeatureGateSpec) DeepCopyInto

func (in *FeatureGateSpec) DeepCopyInto(out *FeatureGateSpec)

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

type FeatureGateStatus

type FeatureGateStatus struct {
	// Namespaces lists the existing namespaces for which this feature gate applies. This is obtained from listing all
	// namespaces and applying the NamespaceSelector specified in spec.
	Namespaces []string `json:"namespaces,omitempty"`
	// ActivatedFeatures lists the discovered features that are activated for the namespaces specified in the spec.
	// This can include features that are not explicitly gated in the spec, but are already available in the system as
	// Feature resources.
	ActivatedFeatures []string `json:"activatedFeatures,omitempty"`
	// DeactivatedFeatures lists the discovered features that are deactivated for the namespaces specified in the spec.
	// This can include features that are not explicitly gated in the spec, but are already available in the system as
	// Feature resources.
	DeactivatedFeatures []string `json:"deactivatedFeatures,omitempty"`
	// UnavailableFeatures lists the features that are gated in the spec, but are not available in the system as
	// Feature resources.
	UnavailableFeatures []string `json:"unavailableFeatures,omitempty"`
}

FeatureGateStatus defines the observed state of FeatureGate

func (*FeatureGateStatus) DeepCopy

func (in *FeatureGateStatus) DeepCopy() *FeatureGateStatus

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

func (*FeatureGateStatus) DeepCopyInto

func (in *FeatureGateStatus) DeepCopyInto(out *FeatureGateStatus)

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

type FeatureList

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

FeatureList contains a list of Feature

func (*FeatureList) DeepCopy

func (in *FeatureList) DeepCopy() *FeatureList

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

func (*FeatureList) DeepCopyInto

func (in *FeatureList) DeepCopyInto(out *FeatureList)

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

func (*FeatureList) DeepCopyObject

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

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

type FeatureMap added in v0.8.0

type FeatureMap map[string]string

FeatureMap is simply a hash table, but needs an explicit type to be an object in another hash map (cf ClientOptions.Features)

func (FeatureMap) DeepCopy added in v0.8.0

func (in FeatureMap) DeepCopy() FeatureMap

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

func (FeatureMap) DeepCopyInto added in v0.8.0

func (in FeatureMap) DeepCopyInto(out *FeatureMap)

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

type FeatureReference

type FeatureReference struct {
	// Name is the name of the Feature resource, which represents a feature the system offers.
	// +kubebuilder:validation:Required
	Name string `json:"name"`
	// Activate indicates the activation intent for the feature.
	Activate bool `json:"activate,omitempty"`
}

FeatureReference refers to a Feature resource and specifies its intended activation state.

func (*FeatureReference) DeepCopy

func (in *FeatureReference) DeepCopy() *FeatureReference

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

func (*FeatureReference) DeepCopyInto

func (in *FeatureReference) DeepCopyInto(out *FeatureReference)

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

type FeatureSpec

type FeatureSpec struct {
	// Description of the feature.
	Description string `json:"description,omitempty"`
	// Immutable indicates this feature cannot be toggled once set
	// If set at creation time, this state will persist for the life of the cluster
	Immutable bool `json:"immutable"`
	// Discoverable indicates if clients should include consider the Feature available for their use
	// Allowing clients to control discoverability is one of the ways the API allows gradual rollout of functionality
	Discoverable bool `json:"discoverable"`
	// Activated defines the default state of the features activation
	Activated bool `json:"activated"`
	// Maturity indicates maturity level of this feature.
	// Maturity levels are Dev, Alpha, Beta, GA and Deprecated.
	// +kubebuilder:validation:Enum=dev;alpha;beta;ga;deprecated
	// - dev: the default for new resources, represents local dev. intended to be hidden and deactivated
	// - alpha: the first milestone meant for limited wider consumption, discoverable and defaults to deactivated
	// - beta: greater visibility for proven designs, discoverable and defaults to activated
	// - ga: intended to be part of the mainline codebase, non-optional
	// - deprecated: destined for future removal
	Maturity string `json:"maturity"`
}

FeatureSpec defines the desired state of Feature

func (*FeatureSpec) DeepCopy

func (in *FeatureSpec) DeepCopy() *FeatureSpec

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

func (*FeatureSpec) DeepCopyInto

func (in *FeatureSpec) DeepCopyInto(out *FeatureSpec)

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

type FeatureStatus

type FeatureStatus struct{}

FeatureStatus defines the observed state of Feature

func (*FeatureStatus) DeepCopy

func (in *FeatureStatus) DeepCopy() *FeatureStatus

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

func (*FeatureStatus) DeepCopyInto

func (in *FeatureStatus) DeepCopyInto(out *FeatureStatus)

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

type GCPDiscovery added in v0.7.0

type GCPDiscovery struct {
	// Name is a name of the discovery
	Name string `json:"name"`
	// Bucket is a Google Cloud Storage bucket.
	// E.g., tanzu-cli
	Bucket string `json:"bucket"`
	// BasePath is a URI path that is prefixed to the object name/path.
	// E.g., plugins/cluster
	ManifestPath string `json:"manifestPath"`
}

GCPDiscovery provides a plugin discovery mechanism via a Google Cloud Storage bucket with a manifest.yaml file.

func (*GCPDiscovery) DeepCopy added in v0.7.0

func (in *GCPDiscovery) DeepCopy() *GCPDiscovery

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

func (*GCPDiscovery) DeepCopyInto added in v0.7.0

func (in *GCPDiscovery) DeepCopyInto(out *GCPDiscovery)

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

type GCPPluginRepository

type GCPPluginRepository struct {
	// Name of the repository.
	Name string `json:"name,omitempty" yaml:"name"`

	// BucketName is the name of the bucket.
	BucketName string `json:"bucketName,omitempty" yaml:"bucketName"`

	// RootPath within the bucket.
	RootPath string `json:"rootPath,omitempty" yaml:"rootPath"`
}

GCPPluginRepository is a plugin repository that utilizes GCP cloud storage.

func (*GCPPluginRepository) DeepCopy

func (in *GCPPluginRepository) DeepCopy() *GCPPluginRepository

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

func (*GCPPluginRepository) DeepCopyInto

func (in *GCPPluginRepository) DeepCopyInto(out *GCPPluginRepository)

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

type GenericRESTDiscovery added in v0.7.0

type GenericRESTDiscovery struct {
	// Name is a name of the discovery
	Name string `json:"name"`
	// Endpoint is the REST API server endpoint.
	// E.g., api.my-domain.local
	Endpoint string `json:"endpoint"`
	// BasePath is the base URL path of the plugin discovery API.
	// E.g., /v1alpha1/cli/plugins
	BasePath string `json:"basePath"`
}

GenericRESTDiscovery provides a plugin discovery mechanism via any REST API endpoint. The fully qualified list URL is constructed as `https://{Endpoint}/{BasePath}` and the get plugin URL is constructed as . `https://{Endpoint}/{BasePath}/{Plugin}`.

func (*GenericRESTDiscovery) DeepCopy added in v0.7.0

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

func (*GenericRESTDiscovery) DeepCopyInto added in v0.7.0

func (in *GenericRESTDiscovery) DeepCopyInto(out *GenericRESTDiscovery)

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

type GlobalServer

type GlobalServer struct {
	// Endpoint for the server.
	Endpoint string `json:"endpoint,omitempty" yaml:"endpoint"`

	// Auth for the global server.
	Auth GlobalServerAuth `json:"auth,omitempty" yaml:"auth"`
}

GlobalServer is the configuration for a global server.

func (*GlobalServer) DeepCopy

func (in *GlobalServer) DeepCopy() *GlobalServer

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

func (*GlobalServer) DeepCopyInto

func (in *GlobalServer) DeepCopyInto(out *GlobalServer)

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

type GlobalServerAuth

type GlobalServerAuth struct {
	// Issuer url for IDP, compliant with OIDC Metadata Discovery.
	Issuer string `json:"issuer" yaml:"issuer"`

	// UserName is the authorized user the token is assigned to.
	UserName string `json:"userName" yaml:"userName"`

	// Permissions are roles assigned to the user.
	Permissions []string `json:"permissions" yaml:"permissions"`

	// AccessToken is the current access token based on the context.
	AccessToken string `json:"accessToken" yaml:"accessToken"`

	// IDToken is the current id token based on the context scoped to the CLI.
	IDToken string `json:"IDToken" yaml:"IDToken"`

	// RefreshToken will be stored only in case of api-token login flow.
	RefreshToken string `json:"refresh_token" yaml:"refresh_token"`

	// Expiration times of the token.
	Expiration metav1.Time `json:"expiration" yaml:"expiration"`

	// Type of the token (user or client).
	Type string `json:"type" yaml:"type"`
}

GlobalServerAuth is authentication for a global server.

func (*GlobalServerAuth) DeepCopy

func (in *GlobalServerAuth) DeepCopy() *GlobalServerAuth

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

func (*GlobalServerAuth) DeepCopyInto

func (in *GlobalServerAuth) DeepCopyInto(out *GlobalServerAuth)

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

type KubernetesDiscovery added in v0.7.0

type KubernetesDiscovery struct {
	// Name is a name of the discovery
	Name string `json:"name"`
	// Path to the kubeconfig.
	Path string `json:"path"`
	// The context to use (if required), defaults to current.
	Context string `json:"context"`
	// Version of the CLIPlugins API to query.
	// E.g., v1alpha1
	Version string `json:"version"`
}

KubernetesDiscovery provides a plugin discovery mechanism via the Kubernetes API server.

func (*KubernetesDiscovery) DeepCopy added in v0.7.0

func (in *KubernetesDiscovery) DeepCopy() *KubernetesDiscovery

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

func (*KubernetesDiscovery) DeepCopyInto added in v0.7.0

func (in *KubernetesDiscovery) DeepCopyInto(out *KubernetesDiscovery)

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

type LocalDiscovery added in v0.7.0

type LocalDiscovery struct {
	// Name is a name of the discovery
	Name string `json:"name"`
	// Path is a local path pointing to directory
	// containing YAML files, each of which contains single
	// CLIPlugin API resource.
	Path string `json:"path"`
}

LocalDiscovery is a artifact discovery endpoint utilizing a local host OS.

func (*LocalDiscovery) DeepCopy added in v0.7.0

func (in *LocalDiscovery) DeepCopy() *LocalDiscovery

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

func (*LocalDiscovery) DeepCopyInto added in v0.7.0

func (in *LocalDiscovery) DeepCopyInto(out *LocalDiscovery)

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

type ManagementClusterServer

type ManagementClusterServer struct {
	// Endpoint for the login.
	Endpoint string `json:"endpoint,omitempty" yaml:"endpoint"`

	// Path to the kubeconfig.
	Path string `json:"path,omitempty" yaml:"path"`

	// The context to use (if required), defaults to current.
	Context string `json:"context,omitempty" yaml:"context"`
}

ManagementClusterServer is the configuration for a management cluster kubeconfig.

func (*ManagementClusterServer) DeepCopy

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

func (*ManagementClusterServer) DeepCopyInto

func (in *ManagementClusterServer) DeepCopyInto(out *ManagementClusterServer)

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

type OCIDiscovery added in v0.7.0

type OCIDiscovery struct {
	// Name is a name of the discovery
	Name string `json:"name"`
	// Image is an OCI compliant image. Which include DNS-compatible registry name,
	// a valid URI path(MAY contain zero or more ‘/’) and a valid tag.
	// E.g., harbor.my-domain.local/tanzu-cli/plugins-manifest:latest
	// Contains a directory containing YAML files, each of which contains single
	// CLIPlugin API resource.
	Image string `json:"image"`
}

OCIDiscovery provides a plugin discovery mechanism via a OCI Image Registry

func (*OCIDiscovery) DeepCopy added in v0.7.0

func (in *OCIDiscovery) DeepCopy() *OCIDiscovery

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

func (*OCIDiscovery) DeepCopyInto added in v0.7.0

func (in *OCIDiscovery) DeepCopyInto(out *OCIDiscovery)

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

type PluginDiscovery added in v0.7.0

type PluginDiscovery struct {
	// GCPStorage is set if the plugins are to be discovered via Google Cloud Storage.
	GCP *GCPDiscovery `json:"gcp,omitempty"`
	// OCIDiscovery is set if the plugins are to be discovered via an OCI Image Registry.
	OCI *OCIDiscovery `json:"oci,omitempty"`
	// GenericRESTDiscovery is set if the plugins are to be discovered via a REST API endpoint.
	REST *GenericRESTDiscovery `json:"rest,omitempty"`
	// KubernetesDiscovery is set if the plugins are to be discovered via the Kubernetes API server.
	Kubernetes *KubernetesDiscovery `json:"k8s,omitempty"`
	// LocalDiscovery is set if the plugins are to be discovered via Local Manifest fast.
	Local *LocalDiscovery `json:"local,omitempty"`
}

PluginDiscovery contains a specific distribution mechanism. Only one of the configs must be set.

func (*PluginDiscovery) DeepCopy added in v0.7.0

func (in *PluginDiscovery) DeepCopy() *PluginDiscovery

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

func (*PluginDiscovery) DeepCopyInto added in v0.7.0

func (in *PluginDiscovery) DeepCopyInto(out *PluginDiscovery)

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

type PluginRepository

type PluginRepository struct {
	// GCPPluginRepository is a plugin repository that utilizes GCP cloud storage.
	GCPPluginRepository *GCPPluginRepository `json:"gcpPluginRepository,omitempty" yaml:"gcpPluginRepository"`
}

PluginRepository is a CLI plugin repository

func (*PluginRepository) DeepCopy

func (in *PluginRepository) DeepCopy() *PluginRepository

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

func (*PluginRepository) DeepCopyInto

func (in *PluginRepository) DeepCopyInto(out *PluginRepository)

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

type Server

type Server struct {
	// Name of the server.
	Name string `json:"name,omitempty" yaml:"name"`

	// Type of the endpoint.
	Type ServerType `json:"type,omitempty" yaml:"type"`

	// GlobalOpts if the server is global.
	GlobalOpts *GlobalServer `json:"globalOpts,omitempty" yaml:"globalOpts"`

	// ManagementClusterOpts if the server is a management cluster.
	ManagementClusterOpts *ManagementClusterServer `json:"managementClusterOpts,omitempty" yaml:"managementClusterOpts"`

	// DiscoverySources determines from where to discover plugins
	// associated with this server
	DiscoverySources []PluginDiscovery `json:"discoverySources,omitempty" yaml:"discoverySources"`
}

Server connection.

func (*Server) DeepCopy

func (in *Server) DeepCopy() *Server

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

func (*Server) DeepCopyInto

func (in *Server) DeepCopyInto(out *Server)

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

func (*Server) IsGlobal

func (s *Server) IsGlobal() bool

IsGlobal tells if the server is global.

func (*Server) IsManagementCluster

func (s *Server) IsManagementCluster() bool

IsManagementCluster tells if the server is a management cluster.

type ServerType

type ServerType string

ServerType is the type of server.

const (
	// ManagementClusterServerType is a management cluster server.
	ManagementClusterServerType ServerType = "managementcluster"

	// GlobalServerType is a global control plane server.
	GlobalServerType ServerType = "global"
)

type VersionSelectorLevel

type VersionSelectorLevel string

VersionSelectorLevel allows selecting plugin versions based on semver properties

const (
	// AllUnstableVersions allows all plugin versions
	AllUnstableVersions VersionSelectorLevel = "all"
	// AlphaUnstableVersions allows all alpha tagged versions
	AlphaUnstableVersions VersionSelectorLevel = "alpha"
	// ExperimentalUnstableVersions includes all pre-releases, minus +build tags
	ExperimentalUnstableVersions VersionSelectorLevel = "experimental"
	// NoUnstableVersions allows no unstable plugin versions, format major.minor.patch only
	NoUnstableVersions VersionSelectorLevel = "none"
)

Jump to

Keyboard shortcuts

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