v1alpha3

package
v0.3.0-rc.0 Latest Latest
Warning

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

Go to latest
Published: Feb 14, 2020 License: Apache-2.0 Imports: 6 Imported by: 49

Documentation

Overview

Package v1alpha3 contains API Schema definitions for the clusterctl v1alpha3 API group +kubebuilder:object:generate=true +groupName=clusterctl.cluster.x-k8s.io

Index

Constants

View Source
const (
	// ClusterctlLabelName defines the label that is applied to all the components managed by clusterctl.
	ClusterctlLabelName = "clusterctl.cluster.x-k8s.io"

	// ClusterctlCoreLabelName defines the label that is applied to all the core objects managed by clusterctl.
	ClusterctlCoreLabelName = "clusterctl.cluster.x-k8s.io/core"

	// ClusterctlResourceLifecyleLabelName defines the label that documents the lifecyle for a specific resource.
	// e.g. resources shared between instances of the same provider. e.g. CRDs, ValidatingWebhookConfiguration, MutatingWebhookConfiguration etc.
	// are marked as shared
	ClusterctlResourceLifecyleLabelName = "clusterctl.cluster.x-k8s.io/lifecycle"
)
View Source
const (
	// CoreProviderType
	CoreProviderType = ProviderType("CoreProvider")

	// BootstrapProviderType
	BootstrapProviderType = ProviderType("BootstrapProvider")

	// InfrastructureProviderType
	InfrastructureProviderType = ProviderType("InfrastructureProvider")

	// ControlPlaneProviderType
	ControlPlaneProviderType = ProviderType("ControlPlaneProvider")

	// ProviderTypeUnknown
	ProviderTypeUnknown = ProviderType("")
)
View Source
const (
	// ResourceLifecycleShared is the value we use when tagging resources to indicate
	// that the resource is shared between multiple instance of a provider, and should not be deleted
	// if an instance of the provider is deleted.
	ResourceLifecycleShared = ResourceLifecycle("shared")
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "clusterctl.cluster.x-k8s.io", Version: "v1alpha3"}

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

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

	// +optional
	ReleaseSeries []ReleaseSeries `json:"releaseSeries"`
}

Metadata for a provider repository

func (*Metadata) DeepCopy

func (in *Metadata) DeepCopy() *Metadata

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

func (*Metadata) DeepCopyInto

func (in *Metadata) DeepCopyInto(out *Metadata)

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

func (*Metadata) DeepCopyObject

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

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

func (*Metadata) GetReleaseSeriesForVersion

func (m *Metadata) GetReleaseSeriesForVersion(version *version.Version) *ReleaseSeries

GetReleaseSeriesForVersion return the release series for a given version.

type Provider

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

	// Type indicates the type of the provider.
	// See ProviderType for a list of supported values
	// +optional
	Type string `json:"type,omitempty"`

	// Version indicates the component version.
	// +optional
	Version string `json:"version,omitempty"`

	// WatchedNamespace indicates the namespace where the provider controller is is watching.
	// if empty the provider controller is watching for objects in all namespaces.
	// +optional
	WatchedNamespace string `json:"watchedNamespace,omitempty"`
}

Provider is the Schema for the providers API

func (*Provider) DeepCopy

func (in *Provider) DeepCopy() *Provider

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

func (*Provider) DeepCopyInto

func (in *Provider) DeepCopyInto(out *Provider)

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

func (*Provider) DeepCopyObject

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

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

func (*Provider) Equals

func (p *Provider) Equals(other Provider) bool

Equals returns true if two providers are exactly the same.

func (*Provider) GetProviderType

func (p *Provider) GetProviderType() ProviderType

GetProviderType attempts to parse the ProviderType field and return the typed ProviderType representation.

func (*Provider) HasWatchingOverlapWith

func (p *Provider) HasWatchingOverlapWith(other Provider) bool

HasWatchingOverlapWith returns true if the provider has an overlapping watching namespace with another provider.

func (*Provider) InstanceName

func (p *Provider) InstanceName() string

InstanceName return the instance name for the provider, that is composed by the provider name and the namespace where the provider is installed (nb. clusterctl does not support multiple instances of the same provider to be installed in the same namespace)

type ProviderList

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

ProviderList contains a list of Provider

func (*ProviderList) DeepCopy

func (in *ProviderList) DeepCopy() *ProviderList

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

func (*ProviderList) DeepCopyInto

func (in *ProviderList) DeepCopyInto(out *ProviderList)

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

func (*ProviderList) DeepCopyObject

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

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

func (*ProviderList) FilterByName

func (l *ProviderList) FilterByName(name string) []Provider

func (*ProviderList) FilterByNamespace

func (l *ProviderList) FilterByNamespace(namespace string) []Provider

func (*ProviderList) FilterByType

func (l *ProviderList) FilterByType(providerType ProviderType) []Provider

func (*ProviderList) FilterCore

func (l *ProviderList) FilterCore() []Provider

func (*ProviderList) FilterNonCore

func (l *ProviderList) FilterNonCore() []Provider

type ProviderType

type ProviderType string

ProviderType is a string representation of a TaskGroup create policy.

type ReleaseSeries

type ReleaseSeries struct {
	// Major version of the release series
	Major uint `json:"major,omitempty"`

	// Minor version of the release series
	Minor uint `json:"minor,omitempty"`

	// Contract defines the API Version of Cluster API (contract) supported by the ReleaseSeries.
	Contract string `json:"contract,omitempty"`
}

ReleaseSeries maps a provider release series (major/minor) with a API Version of Cluster API (contract).

func (*ReleaseSeries) DeepCopy

func (in *ReleaseSeries) DeepCopy() *ReleaseSeries

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

func (*ReleaseSeries) DeepCopyInto

func (in *ReleaseSeries) DeepCopyInto(out *ReleaseSeries)

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

type ResourceLifecycle

type ResourceLifecycle string

ResourceLifecycle configures the lifecycle of a resource

Jump to

Keyboard shortcuts

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