v1alpha1

package
v0.3.0 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2020 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the catalog v1alpha1 API group +kubebuilder:object:generate=true +groupName=catalog.kubecarrier.io

Index

Constants

View Source
const (
	AccountTerminatingReason = "Deleting"
)
View Source
const (
	CatalogEntrySetTerminatingReason = "Deleting"
)
View Source
const (
	CatalogEntryTerminatingReason = "Deleting"
)
View Source
const (
	CatalogTerminatingReason = "Deleting"
)

Variables

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

This section is empty.

Types

type Account

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

	Spec   AccountSpec   `json:"spec,omitempty"`
	Status AccountStatus `json:"status,omitempty"`
}

Account represents an actor in KubeCarrier. Depending on it's roles, it can provide services, consume offered services or both.

KubeCarrier creates a new Namespace for each Account. The Account Metadata is exposed to users that are offered services from this Account.

**Example** ```yaml apiVersion: catalog.kubecarrier.io/v1alpha1 kind: Account metadata:

name: team-a

spec:

metadata:
  displayName: The A Team
  description: In 1972, a crack commando unit was sent to prison by a military court...
roles:
- Provider
- Tenant

``` +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Account Namespace",type="string",JSONPath=".status.namespace.name" +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-admin,shortName=acc,scope=Cluster

func GetAccountByAccountNamespace

func GetAccountByAccountNamespace(ctx context.Context, c client.Client, accountNamespace string) (*Account, error)

func (*Account) DeepCopy

func (in *Account) DeepCopy() *Account

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

func (*Account) DeepCopyInto

func (in *Account) DeepCopyInto(out *Account)

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

func (*Account) DeepCopyObject

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

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

func (*Account) HasRole

func (account *Account) HasRole(role AccountRole) bool

func (*Account) IsReady

func (account *Account) IsReady() bool

IsReady returns if the Account is ready.

type AccountCondition

type AccountCondition struct {
	// Type is the type of the Account condition, currently ('Ready').
	Type AccountConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

AccountCondition contains details for the current condition of this Account.

func (*AccountCondition) DeepCopy

func (in *AccountCondition) DeepCopy() *AccountCondition

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

func (*AccountCondition) DeepCopyInto

func (in *AccountCondition) DeepCopyInto(out *AccountCondition)

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

type AccountConditionType

type AccountConditionType string

AccountConditionType represents a AccountCondition value. +kubebuilder:validation:Ready

const (
	// AccountReady represents a Account condition is in ready state.
	AccountReady AccountConditionType = "Ready"
)

type AccountList

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

AccountList contains a list of Account. +kubebuilder:object:root=true

func (*AccountList) DeepCopy

func (in *AccountList) DeepCopy() *AccountList

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

func (*AccountList) DeepCopyInto

func (in *AccountList) DeepCopyInto(out *AccountList)

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

func (*AccountList) DeepCopyObject

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

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

type AccountMetadata

type AccountMetadata struct {
	CommonMetadata `json:",inline"`
}

AccountMetadata contains the metadata of the Account.

func (*AccountMetadata) DeepCopy

func (in *AccountMetadata) DeepCopy() *AccountMetadata

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

func (*AccountMetadata) DeepCopyInto

func (in *AccountMetadata) DeepCopyInto(out *AccountMetadata)

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

type AccountPhaseType

type AccountPhaseType string

AccountPhaseType represents all conditions as a single string for printing by using kubectl commands. +kubebuilder:validation:Ready;NotReady;Unknown;Terminating

const (
	AccountPhaseReady       AccountPhaseType = "Ready"
	AccountPhaseNotReady    AccountPhaseType = "NotReady"
	AccountPhaseUnknown     AccountPhaseType = "Unknown"
	AccountPhaseTerminating AccountPhaseType = "Terminating"
)

Values of AccountPhaseType.

type AccountRole

type AccountRole string

AccountRole type represents available Account roles. +kubebuilder:validation:Enum=Provider;Tenant

const (
	ProviderRole AccountRole = "Provider"
	TenantRole   AccountRole = "Tenant"
)

type AccountSpec

type AccountSpec struct {
	// Metadata	contains additional human readable account details.
	Metadata AccountMetadata `json:"metadata,omitempty"`

	// Roles this account uses.
	// +kubebuilder:validation:MinItems=1
	Roles []AccountRole `json:"roles"`
	// Subjects holds references to the objects that manged RBAC roles should apply to.
	// +kubebuilder:validation:MinItems=1
	Subjects []rbacv1.Subject `json:"subjects"`
}

AccountSpec describes the desired state of Account.

func (*AccountSpec) DeepCopy

func (in *AccountSpec) DeepCopy() *AccountSpec

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

func (*AccountSpec) DeepCopyInto

func (in *AccountSpec) DeepCopyInto(out *AccountSpec)

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

type AccountStatus

type AccountStatus struct {
	// NamespaceName is the name of the Namespace that the Account manages.
	Namespace *ObjectReference `json:"namespace,omitempty"`
	// ObservedGeneration is the most recent generation observed for this Account by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a Account's current state.
	Conditions []AccountCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase AccountPhaseType `json:"phase,omitempty"`
}

AccountStatus represents the observed state of Account.

func (*AccountStatus) DeepCopy

func (in *AccountStatus) DeepCopy() *AccountStatus

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

func (*AccountStatus) DeepCopyInto

func (in *AccountStatus) DeepCopyInto(out *AccountStatus)

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

func (*AccountStatus) GetCondition

func (s *AccountStatus) GetCondition(t AccountConditionType) (condition AccountCondition, exists bool)

GetCondition returns the Condition of the given condition type, if it exists.

func (*AccountStatus) SetCondition

func (s *AccountStatus) SetCondition(condition AccountCondition)

SetCondition replaces or adds the given condition.

type CRDInformation

type CRDInformation struct {
	Name     string       `json:"name"`
	APIGroup string       `json:"apiGroup"`
	Kind     string       `json:"kind"`
	Plural   string       `json:"plural"`
	Versions []CRDVersion `json:"versions"`

	// Region references a Region of this CRD.
	Region ObjectReference `json:"region"`
}

CRDInformation contains type information about the CRD.

func (*CRDInformation) DeepCopy

func (in *CRDInformation) DeepCopy() *CRDInformation

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

func (*CRDInformation) DeepCopyInto

func (in *CRDInformation) DeepCopyInto(out *CRDInformation)

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

type CRDVersion

type CRDVersion struct {
	// Name of this version, for example: v1, v1alpha1, v1beta1
	Name string `json:"name"`

	// Schema of this CRD version.
	// +kubebuilder:pruning:PreserveUnknownFields
	Schema *apiextensionsv1.CustomResourceValidation `json:"schema,omitempty"`

	// Storage indicates this version should be used when persisting custom resources to storage.
	// There must be exactly one version with storage=true.
	Storage bool `json:"storage,omitempty"`
}

CRDVersion holds CRD version specific details.

func (*CRDVersion) DeepCopy

func (in *CRDVersion) DeepCopy() *CRDVersion

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

func (*CRDVersion) DeepCopyInto

func (in *CRDVersion) DeepCopyInto(out *CRDVersion)

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

type Catalog

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

	Spec   CatalogSpec   `json:"spec,omitempty"`
	Status CatalogStatus `json:"status,omitempty"`
}

Catalog publishes a selection of CatalogEntries to a selection of Tenants.

KubeCarrier will automatically create ServiceClusterAssignment objects for each Tenant selected by the Catalog.

**Example** ```yaml apiVersion: catalog.kubecarrier.io/v1alpha1 kind: Catalog metadata:

name: default

spec:

tenantSelector: {}
catalogEntrySelector: {}

``` +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-provider,shortName=cl

func (*Catalog) DeepCopy

func (in *Catalog) DeepCopy() *Catalog

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

func (*Catalog) DeepCopyInto

func (in *Catalog) DeepCopyInto(out *Catalog)

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

func (*Catalog) DeepCopyObject

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

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

type CatalogCondition

type CatalogCondition struct {
	// Type is the type of the Catalog condition, currently ('Ready').
	Type CatalogConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

CatalogCondition contains details for the current condition of this Catalog.

func (*CatalogCondition) DeepCopy

func (in *CatalogCondition) DeepCopy() *CatalogCondition

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

func (*CatalogCondition) DeepCopyInto

func (in *CatalogCondition) DeepCopyInto(out *CatalogCondition)

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

func (CatalogCondition) True

func (c CatalogCondition) True() bool

True returns whether .Status == "True"

type CatalogConditionType

type CatalogConditionType string

CatalogConditionType represents a CatalogCondition value.

const (
	// CatalogReady represents a Catalog condition is in ready state.
	CatalogReady CatalogConditionType = "Ready"
	// ServiceClusterAssignmentReady represents a CatalogEntry condition that all ServiceClusterAssignments are in a ready state.
	ServiceClusterAssignmentReady CatalogConditionType = "ServiceClusterAssignmentReady"
)

type CatalogEntry

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

	Spec   CatalogEntrySpec   `json:"spec,omitempty"`
	Status CatalogEntryStatus `json:"status,omitempty"`
}

CatalogEntry controls how to offer a CRD to other Tenants.

A CatalogEntry references a single CRD, adds metadata to it and allows to limit field access for Tenants.

**Simple Example** ```yaml apiVersion: catalog.kubecarrier.io/v1alpha1 kind: CatalogEntry metadata:

name: couchdbs.eu-west-1

spec:

metadata:
  displayName: CouchDB
  description: The compfy database
baseCRD:
  name: couchdbs.eu-west-1.loodse

```

**Example with limited fields** ```yaml apiVersion: catalog.kubecarrier.io/v1alpha1 kind: CatalogEntry metadata:

name: couchdbs.eu-west-1

spec:

metadata:
  displayName: CouchDB
  description: The compfy database
baseCRD:
  name: couchdbs.eu-west-1.loodse
derive:
  expose:
  - versions:
    - v1alpha1
    fields:
    - jsonPath: .spec.username
    - jsonPath: .spec.password
    - jsonPath: .status.phase
    - jsonPath: .status.fauxtonAddress
    - jsonPath: .status.address
    - jsonPath: .status.observedGeneration

``` +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Base CRD",type="string",JSONPath=".spec.baseCRD.name" +kubebuilder:printcolumn:name="Tenant CRD",type="string",JSONPath=".status.tenantCRD.name" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-provider,shortName=ce

func (*CatalogEntry) DeepCopy

func (in *CatalogEntry) DeepCopy() *CatalogEntry

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

func (*CatalogEntry) DeepCopyInto

func (in *CatalogEntry) DeepCopyInto(out *CatalogEntry)

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

func (*CatalogEntry) DeepCopyObject

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

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

func (*CatalogEntry) IsReady

func (s *CatalogEntry) IsReady() bool

IsReady returns if the CatalogEntry is ready.

type CatalogEntryCondition

type CatalogEntryCondition struct {
	// Type is the type of the CatalogEntry condition, currently ('Ready').
	Type CatalogEntryConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

CatalogEntryCondition contains details for the current condition of this CatalogEntry.

func (*CatalogEntryCondition) DeepCopy

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

func (*CatalogEntryCondition) DeepCopyInto

func (in *CatalogEntryCondition) DeepCopyInto(out *CatalogEntryCondition)

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

func (CatalogEntryCondition) True

func (c CatalogEntryCondition) True() bool

True returns whether .Status == "True"

type CatalogEntryConditionType

type CatalogEntryConditionType string

CatalogEntryConditionType represents a CatalogEntryCondition value.

const (
	// CatalogEntryReady represents a CatalogEntry condition is in ready state.
	CatalogEntryReady CatalogEntryConditionType = "Ready"
)

type CatalogEntryList

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

CatalogEntryList contains a list of CatalogEntry. +kubebuilder:object:root=true

func (*CatalogEntryList) DeepCopy

func (in *CatalogEntryList) DeepCopy() *CatalogEntryList

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

func (*CatalogEntryList) DeepCopyInto

func (in *CatalogEntryList) DeepCopyInto(out *CatalogEntryList)

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

func (*CatalogEntryList) DeepCopyObject

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

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

type CatalogEntryMetadata

type CatalogEntryMetadata struct {
	CommonMetadata `json:",inline"`
}

CatalogEntryMetadata contains metadata of the CatalogEntry.

func (*CatalogEntryMetadata) DeepCopy

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

func (*CatalogEntryMetadata) DeepCopyInto

func (in *CatalogEntryMetadata) DeepCopyInto(out *CatalogEntryMetadata)

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

type CatalogEntryPhaseType

type CatalogEntryPhaseType string

CatalogEntryPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	CatalogEntryPhaseReady       CatalogEntryPhaseType = "Ready"
	CatalogEntryPhaseNotReady    CatalogEntryPhaseType = "NotReady"
	CatalogEntryPhaseUnknown     CatalogEntryPhaseType = "Unknown"
	CatalogEntryPhaseTerminating CatalogEntryPhaseType = "Terminating"
)

Values of CatalogEntryPhaseType.

type CatalogEntrySet

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

	Spec   CatalogEntrySetSpec   `json:"spec,omitempty"`
	Status CatalogEntrySetStatus `json:"status,omitempty"`
}

CatalogEntrySet manages a CustomResourceDiscoverySet and creates CatalogEntries for each CRD discovered from the selected ServiceClusters.

**Example** See CatalogEntry documentation for more configuration details. ```yaml apiVersion: catalog.kubecarrier.io/v1alpha1 kind: CatalogEntrySet metadata:

name: couchdbs

spec:

metadata:
  displayName: CouchDB
  description: The compfy database
discoverySet:
  crd:
    name: couchdbs.couchdb.io
  serviceClusterSelector: {}

``` +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="CRD",type="string",JSONPath=".spec.discover.crd.name" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-provider,shortName=ces

func (*CatalogEntrySet) DeepCopy

func (in *CatalogEntrySet) DeepCopy() *CatalogEntrySet

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

func (*CatalogEntrySet) DeepCopyInto

func (in *CatalogEntrySet) DeepCopyInto(out *CatalogEntrySet)

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

func (*CatalogEntrySet) DeepCopyObject

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

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

func (*CatalogEntrySet) IsReady

func (s *CatalogEntrySet) IsReady() bool

IsReady returns if the CatalogEntrySet is ready.

type CatalogEntrySetCondition

type CatalogEntrySetCondition struct {
	// Type is the type of the CatalogEntrySet condition, currently ('Ready').
	Type CatalogEntrySetConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

CatalogEntrySetCondition contains details for the current condition of this CatalogEntrySet.

func (*CatalogEntrySetCondition) DeepCopy

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

func (*CatalogEntrySetCondition) DeepCopyInto

func (in *CatalogEntrySetCondition) DeepCopyInto(out *CatalogEntrySetCondition)

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

func (CatalogEntrySetCondition) True

func (c CatalogEntrySetCondition) True() bool

True returns whether .Status == "True"

type CatalogEntrySetConditionType

type CatalogEntrySetConditionType string

CatalogEntrySetConditionType represents a CatalogEntrySetCondition value.

const (
	// CatalogEntrySetReady represents a CatalogEntrySet condition is in ready state.
	CatalogEntrySetReady CatalogEntrySetConditionType = "Ready"
	// CustomResourceDiscoverySetReady represents the CustomResourceDiscoverySet that owned by this CatalogEntrySet is in ready state.
	CustomResourceDiscoverySetReady CatalogEntrySetConditionType = "CustomResourceDiscoveryReady"
	// CatalogEntriesReady represents the CatalogEntry objects that owned by this CatalogEntrySet are in ready state.
	CatalogEntriesReady CatalogEntrySetConditionType = "CatalogEntriesReady"
)

type CatalogEntrySetList

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

CatalogEntrySetList contains a list of CatalogEntrySet. +kubebuilder:object:root=true

func (*CatalogEntrySetList) DeepCopy

func (in *CatalogEntrySetList) DeepCopy() *CatalogEntrySetList

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

func (*CatalogEntrySetList) DeepCopyInto

func (in *CatalogEntrySetList) DeepCopyInto(out *CatalogEntrySetList)

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

func (*CatalogEntrySetList) DeepCopyObject

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

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

type CatalogEntrySetMetadata

type CatalogEntrySetMetadata struct {
	CommonMetadata `json:",inline"`
}

CatalogEntrySetMetadata contains the metadata (display name, description, etc) of the CatalogEntrySet.

func (*CatalogEntrySetMetadata) DeepCopy

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

func (*CatalogEntrySetMetadata) DeepCopyInto

func (in *CatalogEntrySetMetadata) DeepCopyInto(out *CatalogEntrySetMetadata)

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

type CatalogEntrySetPhaseType

type CatalogEntrySetPhaseType string

CatalogEntrySetPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	CatalogEntrySetPhaseReady       CatalogEntrySetPhaseType = "Ready"
	CatalogEntrySetPhaseNotReady    CatalogEntrySetPhaseType = "NotReady"
	CatalogEntrySetPhaseUnknown     CatalogEntrySetPhaseType = "Unknown"
	CatalogEntrySetPhaseTerminating CatalogEntrySetPhaseType = "Terminating"
)

Values of CatalogEntrySetPhaseType.

type CatalogEntrySetSpec

type CatalogEntrySetSpec struct {
	// Metadata contains the metadata of each CatalogEntry for the Service Catalog.
	Metadata CatalogEntrySetMetadata `json:"metadata"`
	// Derive contains the configuration to generate DerivedCustomResources from the BaseCRDs that are selected by this CatalogEntrySet.
	Derive *DerivedConfig `json:"derive,omitempty"`
	// Discover contains the configuration to create a CustomResourceDiscoverySet.
	Discover CustomResourceDiscoverySetConfig `json:"discover"`
}

CatalogEntrySetSpec defines the desired state of CatalogEntrySet.

func (*CatalogEntrySetSpec) DeepCopy

func (in *CatalogEntrySetSpec) DeepCopy() *CatalogEntrySetSpec

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

func (*CatalogEntrySetSpec) DeepCopyInto

func (in *CatalogEntrySetSpec) DeepCopyInto(out *CatalogEntrySetSpec)

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

type CatalogEntrySetStatus

type CatalogEntrySetStatus struct {
	// ObservedGeneration is the most recent generation observed for this CatalogEntrySet by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a CatalogEntrySet's current state.
	Conditions []CatalogEntrySetCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase CatalogEntrySetPhaseType `json:"phase,omitempty"`
}

CatalogEntrySetStatus defines the observed state of CatalogEntrySet.

func (*CatalogEntrySetStatus) DeepCopy

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

func (*CatalogEntrySetStatus) DeepCopyInto

func (in *CatalogEntrySetStatus) DeepCopyInto(out *CatalogEntrySetStatus)

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

func (*CatalogEntrySetStatus) GetCondition

GetCondition returns the Condition of the given condition type, if it exists.

func (*CatalogEntrySetStatus) SetCondition

func (s *CatalogEntrySetStatus) SetCondition(condition CatalogEntrySetCondition)

SetCondition replaces or adds the given condition.

type CatalogEntrySpec

type CatalogEntrySpec struct {
	// Metadata contains the metadata of the CatalogEntry for the Service Catalog.
	Metadata CatalogEntryMetadata `json:"metadata"`
	// BaseCRD is the underlying BaseCRD objects that this CatalogEntry refers to.
	BaseCRD ObjectReference `json:"baseCRD"`
	// Derive contains the configuration to generate DerivedCustomResource from the BaseCRD of this CatalogEntry.
	Derive *DerivedConfig `json:"derive,omitempty"`
}

CatalogEntrySpec describes the desired state of CatalogEntry.

func (*CatalogEntrySpec) DeepCopy

func (in *CatalogEntrySpec) DeepCopy() *CatalogEntrySpec

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

func (*CatalogEntrySpec) DeepCopyInto

func (in *CatalogEntrySpec) DeepCopyInto(out *CatalogEntrySpec)

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

type CatalogEntryStatus

type CatalogEntryStatus struct {
	// TenantCRD holds the information about the Tenant facing CRD that is offered by this CatalogEntry.
	TenantCRD *CRDInformation `json:"tenantCRD,omitempty"`
	// ProviderCRD holds the information about the Provider facing CRD that is offered by this CatalogEntry.
	ProviderCRD *CRDInformation `json:"providerCRD,omitempty"`

	// ObservedGeneration is the most recent generation observed for this CatalogEntry by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a CatalogEntry's current state.
	Conditions []CatalogEntryCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase CatalogEntryPhaseType `json:"phase,omitempty"`
}

CatalogEntryStatus represents the observed state of CatalogEntry.

func (*CatalogEntryStatus) DeepCopy

func (in *CatalogEntryStatus) DeepCopy() *CatalogEntryStatus

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

func (*CatalogEntryStatus) DeepCopyInto

func (in *CatalogEntryStatus) DeepCopyInto(out *CatalogEntryStatus)

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

func (*CatalogEntryStatus) GetCondition

func (s *CatalogEntryStatus) GetCondition(t CatalogEntryConditionType) (condition CatalogEntryCondition, exists bool)

GetCondition returns the Condition of the given condition type, if it exists.

func (*CatalogEntryStatus) SetCondition

func (s *CatalogEntryStatus) SetCondition(condition CatalogEntryCondition)

SetCondition replaces or adds the given condition.

type CatalogList

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

CatalogList contains a list of Catalog. +kubebuilder:object:root=true

func (*CatalogList) DeepCopy

func (in *CatalogList) DeepCopy() *CatalogList

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

func (*CatalogList) DeepCopyInto

func (in *CatalogList) DeepCopyInto(out *CatalogList)

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

func (*CatalogList) DeepCopyObject

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

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

type CatalogPhaseType

type CatalogPhaseType string

CatalogPhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	CatalogPhaseReady       CatalogPhaseType = "Ready"
	CatalogPhaseNotReady    CatalogPhaseType = "NotReady"
	CatalogPhaseUnknown     CatalogPhaseType = "Unknown"
	CatalogPhaseTerminating CatalogPhaseType = "Terminating"
)

Values of CatalogPhaseType.

type CatalogSpec

type CatalogSpec struct {
	// CatalogEntrySelector selects CatalogEntry objects that should be part of this catalog.
	CatalogEntrySelector *metav1.LabelSelector `json:"catalogEntrySelector,omitempty"`

	// TenantSelector selects Tenant objects that the catalog should be published to.
	TenantSelector *metav1.LabelSelector `json:"tenantSelector,omitempty"`
}

CatalogSpec describes the desired contents of a Catalog.

func (*CatalogSpec) DeepCopy

func (in *CatalogSpec) DeepCopy() *CatalogSpec

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

func (*CatalogSpec) DeepCopyInto

func (in *CatalogSpec) DeepCopyInto(out *CatalogSpec)

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

type CatalogStatus

type CatalogStatus struct {
	// Tenants is the list of the Tenants(Tenant) that selected by this Catalog.
	Tenants []ObjectReference `json:"tenants,omitempty"`
	// Entries is the list of the CatalogEntries that selected by this Catalog.
	Entries []ObjectReference `json:"entries,omitempty"`
	// ObservedGeneration is the most recent generation observed for this Catalog by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a Catalog's current state.
	Conditions []CatalogCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase CatalogPhaseType `json:"phase,omitempty"`
}

CatalogStatus represents the observed state of Catalog.

func (*CatalogStatus) DeepCopy

func (in *CatalogStatus) DeepCopy() *CatalogStatus

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

func (*CatalogStatus) DeepCopyInto

func (in *CatalogStatus) DeepCopyInto(out *CatalogStatus)

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

func (*CatalogStatus) GetCondition

func (s *CatalogStatus) GetCondition(t CatalogConditionType) (condition CatalogCondition, exists bool)

GetCondition returns the Condition of the given condition type, if it exists.

func (*CatalogStatus) SetCondition

func (s *CatalogStatus) SetCondition(condition CatalogCondition)

SetCondition replaces or adds the given condition.

type CommonMetadata

type CommonMetadata struct {
	// DisplayName is the human-readable name of this Service.
	// +kubebuilder:validation:MinLength=1
	DisplayName string `json:"displayName"`
	// Description is the long and detailed description of the Service.
	// +kubebuilder:validation:MinLength=1
	Description string `json:"description,omitempty"`
	// ShortDescription is a single line short description of the Service.
	// +kubebuilder:validation:MinLength=1
	ShortDescription string `json:"shortDescription"`
	Logo *Image `json:"logo,omitempty"`
	// Icon is a small squared logo of the service.
	Icon *Image `json:"icon,omitempty"`
}

CommonMetadata contains human-readable information shared for all catalog related objects.

func (*CommonMetadata) DeepCopy

func (in *CommonMetadata) DeepCopy() *CommonMetadata

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

func (*CommonMetadata) DeepCopyInto

func (in *CommonMetadata) DeepCopyInto(out *CommonMetadata)

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

type ConditionStatus

type ConditionStatus string

ConditionStatus represents a condition's status. +kubebuilder:validation:True;False;Unknown

const (
	// ConditionTrue represents the fact that a given condition is true
	ConditionTrue ConditionStatus = "True"

	// ConditionFalse represents the fact that a given condition is false
	ConditionFalse ConditionStatus = "False"

	// ConditionUnknown represents the fact that a given condition is unknown
	ConditionUnknown ConditionStatus = "Unknown"
)

These are valid condition statuses. "ConditionTrue" means a resource is in the condition; "ConditionFalse" means a resource is not in the condition; "ConditionUnknown" means Kubernetes can't decide if a resource is in the condition or not.

type CustomResourceDiscoverySetConfig

type CustomResourceDiscoverySetConfig struct {
	// CRD references a CustomResourceDefinition within the ServiceCluster.
	CRD ObjectReference `json:"crd"`
	// ServiceClusterSelector references a set of ServiceClusters to search the CustomResourceDefinition on.
	ServiceClusterSelector metav1.LabelSelector `json:"serviceClusterSelector"`
	// WebhookStrategy configs the webhook of the CRD which is registered in the management cluster by CustomResourceDiscovery object.
	// There are two possible values for this configuration {None (by default), ServiceCluster}
	// None (by default): Webhook will only check if there is an available ServiceClusterAssignment in the current Namespace.
	// ServiceCluster: Webhook will call webhooks of the CRD in the ServiceCluster with dry-run flag.
	// +kubebuilder:default:=None
	WebhookStrategy corev1alpha1.WebhookStrategyType `json:"webhookStrategy,omitempty"`
}

func (*CustomResourceDiscoverySetConfig) DeepCopy

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

func (*CustomResourceDiscoverySetConfig) DeepCopyInto

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

type DerivedConfig

type DerivedConfig struct {
	// controls which fields will be present in the derived CRD.
	Expose []VersionExposeConfig `json:"expose"`
}

DerivedConfig can be used to limit fields that should be exposed to a Tenant.

func (*DerivedConfig) DeepCopy

func (in *DerivedConfig) DeepCopy() *DerivedConfig

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

func (*DerivedConfig) DeepCopyInto

func (in *DerivedConfig) DeepCopyInto(out *DerivedConfig)

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

type DerivedCustomResource

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

	Spec   DerivedCustomResourceSpec   `json:"spec,omitempty"`
	Status DerivedCustomResourceStatus `json:"status,omitempty"`
}

DerivedCustomResource derives a new CRD from a existing one. +kubebuilder:object:root=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Base CRD",type="string",JSONPath=".spec.baseCRD.name" +kubebuilder:printcolumn:name="Status",type="string",JSONPath=".status.phase" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-provider,shortName=dcr

func (*DerivedCustomResource) DeepCopy

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

func (*DerivedCustomResource) DeepCopyInto

func (in *DerivedCustomResource) DeepCopyInto(out *DerivedCustomResource)

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

func (*DerivedCustomResource) DeepCopyObject

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

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

func (*DerivedCustomResource) IsReady

func (s *DerivedCustomResource) IsReady() bool

IsReady returns if the DerivedCustomResource is ready.

type DerivedCustomResourceCondition

type DerivedCustomResourceCondition struct {
	// Type is the type of the DerivedCustomResource condition, currently ('Ready').
	Type DerivedCustomResourceConditionType `json:"type"`
	// Status is the status of the condition, one of ('True', 'False', 'Unknown').
	Status ConditionStatus `json:"status"`
	// LastTransitionTime is the last time the condition transits from one status to another.
	LastTransitionTime metav1.Time `json:"lastTransitionTime"`
	// Reason is the (brief) reason for the condition's last transition.
	Reason string `json:"reason"`
	// Message is the human readable message indicating details about last transition.
	Message string `json:"message"`
}

DerivedCustomResourceCondition contains details for the current condition of this DerivedCustomResource.

func (*DerivedCustomResourceCondition) DeepCopy

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

func (*DerivedCustomResourceCondition) DeepCopyInto

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

func (DerivedCustomResourceCondition) True

True returns whether .Status == "True"

type DerivedCustomResourceConditionType

type DerivedCustomResourceConditionType string

DerivedCustomResourceConditionType represents a DerivedCustomResourceCondition value.

const (
	// DerivedCustomResourceReady represents a DerivedCustomResource condition is in ready state.
	DerivedCustomResourceReady DerivedCustomResourceConditionType = "Ready"
	// DerivedCustomResourceEstablished is True if the derived crd could be registered and is now served by the kube-apiserver.
	DerivedCustomResourceEstablished DerivedCustomResourceConditionType = "Established"
	// DerivedCustomResourceControllerReady is True if the controller to propagate the derived and internal crd is ready.
	DerivedCustomResourceControllerReady DerivedCustomResourceConditionType = "ControllerReady"
)

type DerivedCustomResourceList

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

DerivedCustomResourceList contains a list of DerivedCustomResource. +kubebuilder:object:root=true

func (*DerivedCustomResourceList) DeepCopy

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

func (*DerivedCustomResourceList) DeepCopyInto

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

func (*DerivedCustomResourceList) DeepCopyObject

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

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

type DerivedCustomResourcePhaseType

type DerivedCustomResourcePhaseType string

DerivedCustomResourcePhaseType represents all conditions as a single string for printing by using kubectl commands.

const (
	DerivedCustomResourcePhaseReady    DerivedCustomResourcePhaseType = "Ready"
	DerivedCustomResourcePhaseNotReady DerivedCustomResourcePhaseType = "NotReady"
	DerivedCustomResourcePhaseUnknown  DerivedCustomResourcePhaseType = "Unknown"
)

Values of DerivedCustomResourcePhaseType.

type DerivedCustomResourceSpec

type DerivedCustomResourceSpec struct {
	// CRD that should be used as a base to derive a new CRD from.
	BaseCRD ObjectReference `json:"baseCRD"`
	// controls which fields will be present in the derived CRD.
	// +kubebuilder:validation:MinItems=1
	Expose []VersionExposeConfig `json:"expose"`
}

DerivedCustomResourceSpec defines the desired state of DerivedCustomResource.

func (*DerivedCustomResourceSpec) DeepCopy

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

func (*DerivedCustomResourceSpec) DeepCopyInto

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

type DerivedCustomResourceStatus

type DerivedCustomResourceStatus struct {
	// ObservedGeneration is the most recent generation observed for this DerivedCustomResource by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// Conditions represents the latest available observations of a DerivedCustomResource's current state.
	Conditions []DerivedCustomResourceCondition `json:"conditions,omitempty"`
	// DEPRECATED.
	// Phase represents the current lifecycle state of this object.
	// Consider this field DEPRECATED, it will be removed as soon as there
	// is a mechanism to map conditions to strings when printing the property.
	// This is only for display purpose, for everything else use conditions.
	Phase DerivedCustomResourcePhaseType `json:"phase,omitempty"`
	// DerivedCR holds information about the derived CRD.
	DerivedCR *ObjectReference `json:"derivedCR,omitempty"`
}

DerivedCustomResourceStatus defines the observed state of DerivedCustomResource.

func (*DerivedCustomResourceStatus) DeepCopy

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

func (*DerivedCustomResourceStatus) DeepCopyInto

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

func (*DerivedCustomResourceStatus) GetCondition

GetCondition returns the Condition of the given condition type, if it exists.

func (*DerivedCustomResourceStatus) SetCondition

SetCondition replaces or adds the given condition.

type FieldPath

type FieldPath struct {
	// JSONPath e.g. .spec.somefield.somesubfield
	JSONPath string `json:"jsonPath"`
}

FieldPath is specifying how to address a certain field.

func (*FieldPath) DeepCopy

func (in *FieldPath) DeepCopy() *FieldPath

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

func (*FieldPath) DeepCopyInto

func (in *FieldPath) DeepCopyInto(out *FieldPath)

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

type Image

type Image struct {
	// MediaType of the included image in data.
	// e.g. image/png, image/jpeg, image/svg
	MediaType string `json:"mediaType"`
	// Data is the image data.
	Data []byte `json:"data"`
}

Image describes an inlined image.

func (*Image) DeepCopy

func (in *Image) DeepCopy() *Image

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

func (*Image) DeepCopyInto

func (in *Image) DeepCopyInto(out *Image)

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

type ObjectReference

type ObjectReference struct {
	// +kubebuilder:validation:MinLength=1
	Name string `json:"name"`
}

ObjectReference describes the link to another object in the same namespace.

func (*ObjectReference) DeepCopy

func (in *ObjectReference) DeepCopy() *ObjectReference

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

func (*ObjectReference) DeepCopyInto

func (in *ObjectReference) DeepCopyInto(out *ObjectReference)

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

type Offering

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

	Spec OfferingSpec `json:"spec,omitempty"`
}

Offering is used for Tenants to discover services that have been made available to them.

Offering objects are created automatically by KubeCarrier in Account namespaces, that have a service offered to them via a Catalog. +kubebuilder:object:root=true +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Provider",type="string",JSONPath=".spec.provider.name" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-tenant,shortName=off

func (*Offering) DeepCopy

func (in *Offering) DeepCopy() *Offering

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

func (*Offering) DeepCopyInto

func (in *Offering) DeepCopyInto(out *Offering)

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

func (*Offering) DeepCopyObject

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

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

type OfferingList

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

OfferingList contains a list of Offering. +kubebuilder:object:root=true

func (*OfferingList) DeepCopy

func (in *OfferingList) DeepCopy() *OfferingList

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

func (*OfferingList) DeepCopyInto

func (in *OfferingList) DeepCopyInto(out *OfferingList)

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

func (*OfferingList) DeepCopyObject

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

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

type OfferingMetadata

type OfferingMetadata struct {
	CommonMetadata `json:",inline"`
}

OfferingMetadata contains the metadata (display name, description, etc) of the Offering.

func (*OfferingMetadata) DeepCopy

func (in *OfferingMetadata) DeepCopy() *OfferingMetadata

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

func (*OfferingMetadata) DeepCopyInto

func (in *OfferingMetadata) DeepCopyInto(out *OfferingMetadata)

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

type OfferingSpec

type OfferingSpec struct {
	Metadata OfferingMetadata `json:"metadata"`
	// Provider references the Provider managing this Offering.
	Provider ObjectReference `json:"provider"`
	// CRD holds the information about the underlying CRD that is offered by this offering.
	CRD CRDInformation `json:"crd,omitempty"`
}

OfferingSpec defines the data (metadata, provider, crds, etc.) of Offering.

func (*OfferingSpec) DeepCopy

func (in *OfferingSpec) DeepCopy() *OfferingSpec

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

func (*OfferingSpec) DeepCopyInto

func (in *OfferingSpec) DeepCopyInto(out *OfferingSpec)

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

type Provider

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

	Spec ProviderSpec `json:"spec,omitempty"`
}

Provider exposes information of an Account with the Provider role.

Provider objects are created automatically by KubeCarrier in Account namespaces, that have a service offered to them via a Catalog. +kubebuilder:object:root=true +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-tenant,shortName=pr

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.

type ProviderList

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

ProviderList contains a list of Provider. +kubebuilder:object:root=true

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.

type ProviderSpec

type ProviderSpec struct {
	// Metadata contains the metadata (display name, description, etc) of the Provider.
	Metadata AccountMetadata `json:"metadata"`
}

ProviderSpec defines the desired state of Provider

func (*ProviderSpec) DeepCopy

func (in *ProviderSpec) DeepCopy() *ProviderSpec

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

func (*ProviderSpec) DeepCopyInto

func (in *ProviderSpec) DeepCopyInto(out *ProviderSpec)

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

type Region

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

	Spec RegionSpec `json:"spec,omitempty"`
}

Region exposes information about a Providers Cluster.

Region objects are created automatically by KubeCarrier in Account namespaces, that have a service offered to them via a Catalog. +kubebuilder:object:root=true +kubebuilder:printcolumn:name="Provider",type="string",JSONPath=".spec.provider.name" +kubebuilder:printcolumn:name="Display Name",type="string",JSONPath=".spec.metadata.displayName" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-tenant,shortName=scr

func (*Region) DeepCopy

func (in *Region) DeepCopy() *Region

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

func (*Region) DeepCopyInto

func (in *Region) DeepCopyInto(out *Region)

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

func (*Region) DeepCopyObject

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

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

type RegionList

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

RegionList contains a list of Region. +kubebuilder:object:root=true

func (*RegionList) DeepCopy

func (in *RegionList) DeepCopy() *RegionList

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

func (*RegionList) DeepCopyInto

func (in *RegionList) DeepCopyInto(out *RegionList)

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

func (*RegionList) DeepCopyObject

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

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

type RegionSpec

type RegionSpec struct {
	// Metadata contains the metadata (display name, description, etc) of the ServiceCluster.
	Metadata corev1alpha1.ServiceClusterMetadata `json:"metadata,omitempty"`

	// Provider references the Provider that this ServiceCluster belongs to.
	Provider ObjectReference `json:"provider"`
}

RegionSpec defines the desired state of Region

func (*RegionSpec) DeepCopy

func (in *RegionSpec) DeepCopy() *RegionSpec

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

func (*RegionSpec) DeepCopyInto

func (in *RegionSpec) DeepCopyInto(out *RegionSpec)

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

type Tenant

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

	Spec TenantSpec `json:"spec,omitempty"`
}

Tenant exposes information about available Tenants on the platform and allows a Provider to set custom labels on them.

Tenant objects will be created for all Accounts with the role "Tenant" in all Account Namespaces with the role "Provider". +kubebuilder:object:root=true +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:categories=all;kubecarrier-provider,shortName=tr

func (*Tenant) DeepCopy

func (in *Tenant) DeepCopy() *Tenant

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

func (*Tenant) DeepCopyInto

func (in *Tenant) DeepCopyInto(out *Tenant)

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

func (*Tenant) DeepCopyObject

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

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

type TenantList

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

TenantList contains a list of Tenant. +kubebuilder:object:root=true

func (*TenantList) DeepCopy

func (in *TenantList) DeepCopy() *TenantList

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

func (*TenantList) DeepCopyInto

func (in *TenantList) DeepCopyInto(out *TenantList)

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

func (*TenantList) DeepCopyObject

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

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

type TenantSpec

type TenantSpec struct{}

TenantSpec defines the desired state of Tenant

func (*TenantSpec) DeepCopy

func (in *TenantSpec) DeepCopy() *TenantSpec

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

func (*TenantSpec) DeepCopyInto

func (in *TenantSpec) DeepCopyInto(out *TenantSpec)

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

type VersionExposeConfig

type VersionExposeConfig struct {
	// specifies the versions of the referenced CRD, that this expose config applies to.
	// The same version may not be specified in multiple VersionExposeConfigs.
	// +kubebuilder:validation:MinItems=1
	Versions []string `json:"versions"`
	// specifies the fields that should be present in the derived CRD.
	// +kubebuilder:validation:MinItems=1
	Fields []FieldPath `json:"fields"`
}

VersionExposeConfig specifies which fields to expose in the derived CRD.

func (*VersionExposeConfig) DeepCopy

func (in *VersionExposeConfig) DeepCopy() *VersionExposeConfig

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

func (*VersionExposeConfig) DeepCopyInto

func (in *VersionExposeConfig) DeepCopyInto(out *VersionExposeConfig)

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

Jump to

Keyboard shortcuts

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