v1alpha1

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jun 15, 2023 License: Apache-2.0 Imports: 13 Imported by: 0

Documentation

Overview

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

Index

Constants

View Source
const (
	RegisteredServiceStateAvailable   string = "Available"
	RegisteredServiceStateUnreachable string = "Unreachable"
	RegisteredServiceStateClaimed     string = "Claimed"
)
View Source
const (
	// ServiceBindingBoundCondition means the ServiceBinding has successfully
	// projected the secret into the Workload.
	ServiceBindingBoundCondition = "Bound"
	// ServiceBindingNotBoundCondition means the ServiceBinding has not
	// projected the secret into the Workload.
	// As an example, this will occur when the secret to be bound is not found
	ServiceBindingNotBoundCondition = "NotBound"
)

These are valid conditions of ServiceBinding.

View Source
const (
	ServiceBindingStateReady     string = "Ready"
	ServiceBindingStateMalformed string = "Malformed"
)

ConditionReady specifies that the resource is ready. For long-running resources.

Variables

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

type ApplicationSelector struct {
	// API version of the referent.
	APIVersion string `json:"apiVersion"`
	// Kind of the referent.
	// More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
	Kind string `json:"kind"`
	// Name of the referent.
	// More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
	Name string `json:"name,omitempty"`
	// Selector is a query that selects the workload or workloads to bind the service to
	Selector *metav1.LabelSelector `json:"selector,omitempty"`
}

Application resource to inject the binding info. It could be any process running within a container.

func (*ApplicationSelector) DeepCopy

func (in *ApplicationSelector) DeepCopy() *ApplicationSelector

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

func (*ApplicationSelector) DeepCopyInto

func (in *ApplicationSelector) DeepCopyInto(out *ApplicationSelector)

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

type ClusterEnvironment

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

	Spec   ClusterEnvironmentSpec   `json:"spec,omitempty"`
	Status ClusterEnvironmentStatus `json:"status,omitempty"`
}

ClusterEnvironment is the Schema for the clusterenvironments API

func (*ClusterEnvironment) DeepCopy

func (in *ClusterEnvironment) DeepCopy() *ClusterEnvironment

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

func (*ClusterEnvironment) DeepCopyInto

func (in *ClusterEnvironment) DeepCopyInto(out *ClusterEnvironment)

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

func (*ClusterEnvironment) DeepCopyObject

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

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

func (*ClusterEnvironment) HasDeletionTimestamp

func (ce *ClusterEnvironment) HasDeletionTimestamp() bool

type ClusterEnvironmentList

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

ClusterEnvironmentList contains a list of ClusterEnvironment

func (*ClusterEnvironmentList) DeepCopy

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

func (*ClusterEnvironmentList) DeepCopyInto

func (in *ClusterEnvironmentList) DeepCopyInto(out *ClusterEnvironmentList)

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

func (*ClusterEnvironmentList) DeepCopyObject

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

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

type ClusterEnvironmentSpec

type ClusterEnvironmentSpec struct {
	// The environment associated to the ClusterEnvironment instance
	EnvironmentName string `json:"environmentName"`

	// Name of the Secret where connection (kubeconfig) information to target cluster is stored
	ClusterContextSecret string `json:"clusterContextSecret"`

	// Description of the ClusterEnvironment
	Description string `json:"description,omitempty"`

	// Labels
	Labels []string `json:"labels,omitempty"`

	// Namespaces in target cluster where applications are deployed
	ApplicationNamespaces []string `json:"applicationNamespaces,omitempty"`

	// Namespaces in target cluster where services are discovered
	ServiceNamespaces []string `json:"serviceNamespaces,omitempty"`

	// Cluster Admin's contact information
	ContactInfo string `json:"contactInfo,omitempty"`

	// SynchronizationStrategy defines whether Primaza will watch clusters (Pull)
	// or Agents will Push data as they have (Push)
	//+kubebuilder:validation:Enum=Pull;Push
	//+kubebuilder:default:=Push
	SynchronizationStrategy SynchronizationStrategy `json:"synchronizationStrategy"`
}

ClusterEnvironmentSpec defines the desired state of ClusterEnvironment

func (*ClusterEnvironmentSpec) DeepCopy

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

func (*ClusterEnvironmentSpec) DeepCopyInto

func (in *ClusterEnvironmentSpec) DeepCopyInto(out *ClusterEnvironmentSpec)

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

type ClusterEnvironmentState

type ClusterEnvironmentState string
const (
	ClusterEnvironmentStateOnline  ClusterEnvironmentState = "Online"
	ClusterEnvironmentStatePartial ClusterEnvironmentState = "Partial"
	ClusterEnvironmentStateOffline ClusterEnvironmentState = "Offline"
)

type ClusterEnvironmentStatus

type ClusterEnvironmentStatus struct {
	// The State of the cluster environment
	//+kubebuilder:validation:Enum=Online;Offline;Partial
	//+kubebuilder:default:=Offline
	State ClusterEnvironmentState `json:"state"`

	// Status Conditions
	Conditions []metav1.Condition `json:"conditions"`
}

ClusterEnvironmentStatus defines the observed state of ClusterEnvironment

func (*ClusterEnvironmentStatus) DeepCopy

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

func (*ClusterEnvironmentStatus) DeepCopyInto

func (in *ClusterEnvironmentStatus) DeepCopyInto(out *ClusterEnvironmentStatus)

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

type Environment

type Environment struct {
	// Name of the environment variable
	Name string `json:"name"`

	// Secret data key
	Key string `json:"key"`
}

Environment represents a key to Secret data keys and name of the environment variable

func (*Environment) DeepCopy

func (in *Environment) DeepCopy() *Environment

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

func (*Environment) DeepCopyInto

func (in *Environment) DeepCopyInto(out *Environment)

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

type EnvironmentConstraints

type EnvironmentConstraints struct {
	// Environments defines the environments that the RegisteredService may be
	// used in.
	Environments []string `json:"environments,omitempty"`
}

EnvironmentConstraints defines the constraints on environment for which the resource may be used.

func (*EnvironmentConstraints) DeepCopy

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

func (*EnvironmentConstraints) DeepCopyInto

func (in *EnvironmentConstraints) DeepCopyInto(out *EnvironmentConstraints)

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

type FieldMapping

type FieldMapping struct {
	// Constant is a constant value for the field
	Constant *string `json:"constant,omitempty"`
	// JsonPathExpr represents a jsonPath for extracting the field
	JsonPathExpr *string `json:"jsonPath,omitempty"`
}

+kubebuilder:validation:MaxProperties:=1 +kubebuilder:validation:MinProperties:=1

func (*FieldMapping) DeepCopy

func (in *FieldMapping) DeepCopy() *FieldMapping

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

func (*FieldMapping) DeepCopyInto

func (in *FieldMapping) DeepCopyInto(out *FieldMapping)

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

type HealthCheck

type HealthCheck struct {
	// Container defines a container that will run a check against the
	// ServiceEndpointDefinition to determine connectivity and access.
	Container HealthCheckContainer `json:"container"`
}

HealthCheck defines metadata that can be used check the health of a service and report status.

func (*HealthCheck) DeepCopy

func (in *HealthCheck) DeepCopy() *HealthCheck

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

func (*HealthCheck) DeepCopyInto

func (in *HealthCheck) DeepCopyInto(out *HealthCheck)

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

type HealthCheckContainer

type HealthCheckContainer struct {
	// Container image with the client to run the test
	Image string `json:"image"`
	// Command to execute in the container to run the test
	Command string `json:"command"`
}

HealthCheckContainer defines the container information to be used to run helth checks for the service.

func (*HealthCheckContainer) DeepCopy

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

func (*HealthCheckContainer) DeepCopyInto

func (in *HealthCheckContainer) DeepCopyInto(out *HealthCheckContainer)

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

type RegisteredService

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

	Spec   RegisteredServiceSpec   `json:"spec,omitempty"`
	Status RegisteredServiceStatus `json:"status,omitempty"`
}

RegisteredService is the Schema for the registeredservices API.

func (*RegisteredService) DeepCopy

func (in *RegisteredService) DeepCopy() *RegisteredService

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

func (*RegisteredService) DeepCopyInto

func (in *RegisteredService) DeepCopyInto(out *RegisteredService)

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

func (*RegisteredService) DeepCopyObject

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

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

type RegisteredServiceConstraints

type RegisteredServiceConstraints struct {
	// Environments defines in which environments the RegisteredService may be used.
	Environments []string `json:"environments,omitempty"`
}

RegisteredServiceConstraints defines constrains to be honored when determining whether the service can be claimed from certain environments.

func (*RegisteredServiceConstraints) DeepCopy

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

func (*RegisteredServiceConstraints) DeepCopyInto

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

type RegisteredServiceList

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

RegisteredServiceList contains a list of RegisteredService.

func (*RegisteredServiceList) DeepCopy

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

func (*RegisteredServiceList) DeepCopyInto

func (in *RegisteredServiceList) DeepCopyInto(out *RegisteredServiceList)

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

func (*RegisteredServiceList) DeepCopyObject

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

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

type RegisteredServiceSpec

type RegisteredServiceSpec struct {
	// Constraints defines under which circumstances the RegisteredService may
	// be used.
	// +optional
	Constraints *RegisteredServiceConstraints `json:"constraints,omitempty"`

	// HealthCheck defines a health check for the underlying service.
	// +optional
	HealthCheck *HealthCheck `json:"healthcheck,omitempty"`

	// SLA defines the support level for this service.
	// +optional
	SLA string `json:"sla,omitempty"`

	// ServiceClassIdentity defines a set of attributes that are sufficient to
	// identify a service class.  A ServiceClaim whose ServiceClassIdentity
	// field is a subset of a RegisteredService's keys can claim that service.
	ServiceClassIdentity []ServiceClassIdentityItem `json:"serviceClassIdentity"`

	// ServiceEndpointDefinition defines a set of attributes sufficient for a
	// client to establish a connection to the service.
	ServiceEndpointDefinition []ServiceEndpointDefinitionItem `json:"serviceEndpointDefinition"`
}

RegisteredServiceSpec defines the desired state of RegisteredService

func (*RegisteredServiceSpec) DeepCopy

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

func (*RegisteredServiceSpec) DeepCopyInto

func (in *RegisteredServiceSpec) DeepCopyInto(out *RegisteredServiceSpec)

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

func (RegisteredServiceSpec) GetEnvironmentConstraints

func (s RegisteredServiceSpec) GetEnvironmentConstraints() []string

type RegisteredServiceStatus

type RegisteredServiceStatus struct {
	// State describes the current state of the service.
	// +optional
	State string `json:"state,omitempty"`
}

RegisteredServiceStatus defines the observed state of RegisteredService.

func (*RegisteredServiceStatus) DeepCopy

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

func (*RegisteredServiceStatus) DeepCopyInto

func (in *RegisteredServiceStatus) DeepCopyInto(out *RegisteredServiceStatus)

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

type ServiceBinding

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

	Spec ServiceBindingSpec `json:"spec,omitempty"`

	// Observed status of the service binding within the namespace
	Status ServiceBindingStatus `json:"status,omitempty"`
}

ServiceBinding is the Schema for the servicebindings API

func (*ServiceBinding) DeepCopy

func (in *ServiceBinding) DeepCopy() *ServiceBinding

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

func (*ServiceBinding) DeepCopyInto

func (in *ServiceBinding) DeepCopyInto(out *ServiceBinding)

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

func (*ServiceBinding) DeepCopyObject

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

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

func (*ServiceBinding) GetSpec

func (sb *ServiceBinding) GetSpec() interface{}

func (*ServiceBinding) HasDeletionTimestamp

func (sb *ServiceBinding) HasDeletionTimestamp() bool

type ServiceBindingList

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

ServiceBindingList contains a list of ServiceBinding

func (*ServiceBindingList) DeepCopy

func (in *ServiceBindingList) DeepCopy() *ServiceBindingList

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

func (*ServiceBindingList) DeepCopyInto

func (in *ServiceBindingList) DeepCopyInto(out *ServiceBindingList)

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

func (*ServiceBindingList) DeepCopyObject

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

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

type ServiceBindingSpec

type ServiceBindingSpec struct {

	// ServiceEndpointDefinitionSecret is the name of the secret to project into the application
	// +required
	ServiceEndpointDefinitionSecret string `json:"serviceEndpointDefinitionSecret"`

	// Application resource to inject the binding info.
	// It could be any process running within a container.
	// From the spec:
	// A Service Binding resource **MUST** define a `.spec.application`
	// which is an `ObjectReference`-like declaration to a `PodSpec`-able
	// resource.  A `ServiceBinding` **MAY** define the application
	// reference by-name or by-[label selector][ls]. A name and selector
	// **MUST NOT** be defined in the same reference.
	// +required
	Application ApplicationSelector `json:"application"`

	// Env creates environment variables based on the Secret values
	Env []Environment `json:"env,omitempty"`
}

ServiceBindingSpec defines the desired state of ServiceBinding

func (*ServiceBindingSpec) DeepCopy

func (in *ServiceBindingSpec) DeepCopy() *ServiceBindingSpec

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

func (*ServiceBindingSpec) DeepCopyInto

func (in *ServiceBindingSpec) DeepCopyInto(out *ServiceBindingSpec)

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

type ServiceBindingStatus

type ServiceBindingStatus struct {
	// The status of the service binding along with reason and type
	// +optional
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// +kubebuilder:validation:Enum=Ready;Malformed
	// The state of the service binding observed
	// +kubebuilder:default:=Malformed
	State string `json:"state,omitempty"`
}

ServiceBindingStatus defines the observed state of ServiceBinding. +k8s:openapi-gen=true

func (*ServiceBindingStatus) DeepCopy

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

func (*ServiceBindingStatus) DeepCopyInto

func (in *ServiceBindingStatus) DeepCopyInto(out *ServiceBindingStatus)

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

type ServiceCatalog

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

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

ServiceCatalog is the Schema for the servicecatalogs API

func (*ServiceCatalog) DeepCopy

func (in *ServiceCatalog) DeepCopy() *ServiceCatalog

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

func (*ServiceCatalog) DeepCopyInto

func (in *ServiceCatalog) DeepCopyInto(out *ServiceCatalog)

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

func (*ServiceCatalog) DeepCopyObject

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

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

type ServiceCatalogList

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

ServiceCatalogList contains a list of ServiceCatalog

func (*ServiceCatalogList) DeepCopy

func (in *ServiceCatalogList) DeepCopy() *ServiceCatalogList

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

func (*ServiceCatalogList) DeepCopyInto

func (in *ServiceCatalogList) DeepCopyInto(out *ServiceCatalogList)

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

func (*ServiceCatalogList) DeepCopyObject

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

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

type ServiceCatalogService

type ServiceCatalogService struct {
	// Name defines the name of the known service
	Name string `json:"name"`

	// ServiceClassIdentity defines a set of attributes that are sufficient to
	// identify a service class.  A ServiceClaim whose ServiceClassIdentity
	// field is a subset of a RegisteredService's keys can claim that service.
	ServiceClassIdentity []ServiceClassIdentityItem `json:"serviceClassIdentity"`

	// ServiceEndpointDefinitionKeys defines a set of keys listing the
	// information this service provides to a workload.
	ServiceEndpointDefinitionKeys []string `json:"serviceEndpointDefinitionKeys"`
}

func (*ServiceCatalogService) DeepCopy

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

func (*ServiceCatalogService) DeepCopyInto

func (in *ServiceCatalogService) DeepCopyInto(out *ServiceCatalogService)

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

type ServiceCatalogSpec

type ServiceCatalogSpec struct {
	// Services contains a list of services that are known to Primaza.
	Services []ServiceCatalogService `json:"services,omitempty"`
}

ServiceCatalogSpec defines the desired state of ServiceCatalog

func (*ServiceCatalogSpec) DeepCopy

func (in *ServiceCatalogSpec) DeepCopy() *ServiceCatalogSpec

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

func (*ServiceCatalogSpec) DeepCopyInto

func (in *ServiceCatalogSpec) DeepCopyInto(out *ServiceCatalogSpec)

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

type ServiceClaim

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

	Spec   ServiceClaimSpec   `json:"spec,omitempty"`
	Status ServiceClaimStatus `json:"status,omitempty"`
}

ServiceClaim is the Schema for the serviceclaims API

func (*ServiceClaim) DeepCopy

func (in *ServiceClaim) DeepCopy() *ServiceClaim

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

func (*ServiceClaim) DeepCopyInto

func (in *ServiceClaim) DeepCopyInto(out *ServiceClaim)

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

func (*ServiceClaim) DeepCopyObject

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

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

func (*ServiceClaim) HasDeletionTimestamp

func (sc *ServiceClaim) HasDeletionTimestamp() bool

func (*ServiceClaim) SetupWebhookWithManager

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

type ServiceClaimApplicationClusterContext

type ServiceClaimApplicationClusterContext struct {
	ClusterEnvironmentName string `json:"clusterEnvironmentName"`
	Namespace              string `json:"namespace"`
}

func (*ServiceClaimApplicationClusterContext) DeepCopy

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

func (*ServiceClaimApplicationClusterContext) DeepCopyInto

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

type ServiceClaimList

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

ServiceClaimList contains a list of ServiceClaim

func (*ServiceClaimList) DeepCopy

func (in *ServiceClaimList) DeepCopy() *ServiceClaimList

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

func (*ServiceClaimList) DeepCopyInto

func (in *ServiceClaimList) DeepCopyInto(out *ServiceClaimList)

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

func (*ServiceClaimList) DeepCopyObject

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

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

type ServiceClaimSpec

type ServiceClaimSpec struct {
	// ServiceClassIdentity defines a set of attributes that are sufficient to
	// identify a service class.  A ServiceClaim whose ServiceClassIdentity
	// field is a subset of a RegisteredService's keys can claim that service.
	ServiceClassIdentity []ServiceClassIdentityItem `json:"serviceClassIdentity"`

	// ServiceEndpointDefinition defines a set of attributes sufficient for a
	// client to establish a connection to the service.
	ServiceEndpointDefinitionKeys []string `json:"serviceEndpointDefinitionKeys"`

	Application ApplicationSelector `json:"application,omitempty"`
	// EnvironmentTag allows the controller to search for those application cluster
	// environments that define such EnvironmentTag
	// +optional
	EnvironmentTag string `json:"environmentTag,omitempty"`
	// +optional
	ApplicationClusterContext *ServiceClaimApplicationClusterContext `json:"applicationClusterContext,omitempty"`
}

ServiceClaimSpec defines the desired state of ServiceClaim

func (*ServiceClaimSpec) DeepCopy

func (in *ServiceClaimSpec) DeepCopy() *ServiceClaimSpec

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

func (*ServiceClaimSpec) DeepCopyInto

func (in *ServiceClaimSpec) DeepCopyInto(out *ServiceClaimSpec)

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

type ServiceClaimState

type ServiceClaimState string
const (
	ServiceClaimConditionReady ServiceClaimState = "Ready"
	ServiceClaimStatePending   ServiceClaimState = "Pending"
	ServiceClaimStateResolved  ServiceClaimState = "Resolved"
	ServiceClaimStateInvalid   ServiceClaimState = "Invalid"
)

type ServiceClaimStatus

type ServiceClaimStatus struct {
	//+kubebuilder:validation:Enum=Pending;Resolved;Invalid
	//+kubebuilder:default:=Pending
	State             ServiceClaimState  `json:"state"`
	ClaimID           string             `json:"claimID,omitempty"`
	RegisteredService string             `json:"registeredService"`
	Conditions        []metav1.Condition `json:"conditions,omitempty"`
}

ServiceClaimStatus defines the observed state of ServiceClaim

func (*ServiceClaimStatus) DeepCopy

func (in *ServiceClaimStatus) DeepCopy() *ServiceClaimStatus

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

func (*ServiceClaimStatus) DeepCopyInto

func (in *ServiceClaimStatus) DeepCopyInto(out *ServiceClaimStatus)

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

type ServiceClass

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

	Spec   ServiceClassSpec   `json:"spec,omitempty"`
	Status ServiceClassStatus `json:"status,omitempty"`
}

ServiceClass is the Schema for the serviceclasses API

func (*ServiceClass) DeepCopy

func (in *ServiceClass) DeepCopy() *ServiceClass

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

func (*ServiceClass) DeepCopyInto

func (in *ServiceClass) DeepCopyInto(out *ServiceClass)

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

func (*ServiceClass) DeepCopyObject

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

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

func (*ServiceClass) SetupWebhookWithManager

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

type ServiceClassIdentityItem

type ServiceClassIdentityItem struct {
	// Name of the service class identity attribute.
	Name string `json:"name"`

	// Value of the service class identity attribute.
	Value string `json:"value"`
}

ServiceClassIdentityItem defines an attribute that is necessary to identify a service class.

func (*ServiceClassIdentityItem) DeepCopy

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

func (*ServiceClassIdentityItem) DeepCopyInto

func (in *ServiceClassIdentityItem) DeepCopyInto(out *ServiceClassIdentityItem)

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

type ServiceClassList

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

ServiceClassList contains a list of ServiceClass

func (*ServiceClassList) DeepCopy

func (in *ServiceClassList) DeepCopy() *ServiceClassList

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

func (*ServiceClassList) DeepCopyInto

func (in *ServiceClassList) DeepCopyInto(out *ServiceClassList)

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

func (*ServiceClassList) DeepCopyObject

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

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

type ServiceClassResource

type ServiceClassResource struct {
	// APIVersion of the underlying service resource
	APIVersion string `json:"apiVersion"`

	// Kind of the underlying service resource
	Kind string `json:"kind"`

	// ServiceEndpointDefinitionMappings defines how a key-value mapping projected
	// into services may be constructed.
	ServiceEndpointDefinitionMappings ServiceEndpointDefinitionMappings `json:"serviceEndpointDefinitionMappings"`
}

ServiceClassResource defines

func (*ServiceClassResource) DeepCopy

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

func (*ServiceClassResource) DeepCopyInto

func (in *ServiceClassResource) DeepCopyInto(out *ServiceClassResource)

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

func (*ServiceClassResource) ValidateMapping

func (r *ServiceClassResource) ValidateMapping() field.ErrorList

type ServiceClassResourceFieldMapping

type ServiceClassResourceFieldMapping struct {
	// Name of the data referred to
	Name string `json:"name"`

	// JsonPath defines where data lives in the service resource.  This query
	// must resolve to a single value (e.g. not an array of values).
	JsonPath string `json:"jsonPath"`

	// Secret indicates whether or not the mapping data needs to be stored in a secret.
	// +optional
	// +kubebuilder:default=true
	Secret bool `json:"secret"`
}

func (*ServiceClassResourceFieldMapping) DeepCopy

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

func (*ServiceClassResourceFieldMapping) DeepCopyInto

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

type ServiceClassSecretRefFieldMapping

type ServiceClassSecretRefFieldMapping struct {
	// Name of the data referred to
	Name string `json:"name"`

	// SecretName defines a constant value or a JsonPath used to extract from
	// resource's specification the name of a linked secret
	SecretName FieldMapping `json:"secretName"`

	// SecretKey defines a constant value or a JsonPath used to extract from
	// resource's specification the Key to be copied from the linked secret
	SecretKey FieldMapping `json:"secretKey"`
}

func (*ServiceClassSecretRefFieldMapping) DeepCopy

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

func (*ServiceClassSecretRefFieldMapping) DeepCopyInto

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

type ServiceClassSpec

type ServiceClassSpec struct {
	// Constraints defines under which circumstances the ServiceClass may
	// be used.
	// +optional
	Constraints *EnvironmentConstraints `json:"constraints,omitempty"`

	// HealthCheck sets the default health check for generated registered services
	// +optional
	HealthCheck *HealthCheck `json:"healthCheck,omitempty"`

	// Resource defines the resource type to be used to convert into Registered
	// Services
	Resource ServiceClassResource `json:"resource"`

	// ServiceClassIdentity defines a set of attributes that are sufficient to
	// identify a service class.  A ServiceClaim whose ServiceClassIdentity
	// field is a subset of a RegisteredService's keys can claim that service.
	ServiceClassIdentity []ServiceClassIdentityItem `json:"serviceClassIdentity"`
}

ServiceClassSpec defines the desired state of ServiceClass

func (*ServiceClassSpec) DeepCopy

func (in *ServiceClassSpec) DeepCopy() *ServiceClassSpec

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

func (*ServiceClassSpec) DeepCopyInto

func (in *ServiceClassSpec) DeepCopyInto(out *ServiceClassSpec)

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

func (ServiceClassSpec) GetEnvironmentConstraints

func (s ServiceClassSpec) GetEnvironmentConstraints() []string

type ServiceClassStatus

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

ServiceClassStatus defines the observed state of ServiceClass

func (*ServiceClassStatus) DeepCopy

func (in *ServiceClassStatus) DeepCopy() *ServiceClassStatus

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

func (*ServiceClassStatus) DeepCopyInto

func (in *ServiceClassStatus) DeepCopyInto(out *ServiceClassStatus)

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

type ServiceEndpointDefinitionItem

type ServiceEndpointDefinitionItem struct {
	// Name of the service endpoint definition attribute.
	Name string `json:"name"`

	// Value of the service endpoint definition attribute. It is mutually
	// exclusive with ValueFromSecret.
	// +optional
	Value string `json:"value,omitempty"`

	// Value reference of the service endpoint definition attribute. It is mutually
	// exclusive with Value
	// +optional
	ValueFromSecret *ServiceEndpointDefinitionSecretRef `json:"valueFromSecret,omitempty"`
}

ServiceEndpointDefinitionItem defines an attribute that is necessary for a client to connect to a service

func (*ServiceEndpointDefinitionItem) DeepCopy

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

func (*ServiceEndpointDefinitionItem) DeepCopyInto

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

type ServiceEndpointDefinitionMappings

type ServiceEndpointDefinitionMappings struct {
	ResourceFields  []ServiceClassResourceFieldMapping  `json:"resourceFields,omitempty"`
	SecretRefFields []ServiceClassSecretRefFieldMapping `json:"secretRefFields,omitempty"`
}

func (*ServiceEndpointDefinitionMappings) DeepCopy

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

func (*ServiceEndpointDefinitionMappings) DeepCopyInto

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

type ServiceEndpointDefinitionSecretRef

type ServiceEndpointDefinitionSecretRef struct {
	// Name of the secret reference
	Name string `json:"name"`

	// Key of the secret reference field
	Key string `json:"key"`
}

ServiceEndpointDefinitionSecretRef defines a reference to one of the keys of a secret. This reference can then be used when defining a ServiceEndpointDefinitionItem

func (*ServiceEndpointDefinitionSecretRef) DeepCopy

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

func (*ServiceEndpointDefinitionSecretRef) DeepCopyInto

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

type SynchronizationStrategy

type SynchronizationStrategy string

SynchronizationStrategy defines the synchronization strategy

const (
	SynchronizationStrategyPull SynchronizationStrategy = "Pull"
	SynchronizationStrategyPush SynchronizationStrategy = "Push"
)

func ParseSynchronizationStrategy

func ParseSynchronizationStrategy(s string) (*SynchronizationStrategy, error)

Jump to

Keyboard shortcuts

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