Documentation
¶
Overview ¶
Package v1beta1 contains API Schema definitions for the authentication v1beta1 API group
Index ¶
- Variables
- type AuthParams
- type AuthzPolicy
- type AwsConfig
- type Identity
- type IdentityList
- type IdentitySpec
- type IdentityStatus
- type IdentityType
- type Renew
- type RenewList
- type RenewSpec
- type RenewStatus
- type ResourceSlice
- type ResourceSliceClass
- type ResourceSliceCondition
- type ResourceSliceConditionStatus
- type ResourceSliceConditionType
- type ResourceSliceList
- type ResourceSliceSpec
- type ResourceSliceStatus
- type Tenant
- type TenantCondition
- type TenantList
- type TenantSpec
- type TenantStatus
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "authentication.liqo.io", Version: "v1beta1"} // 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 )
var IdentityGroupResource = schema.GroupResource{Group: GroupVersion.Group, Resource: IdentityResource}
IdentityGroupResource is group resource used to register these objects.
var IdentityGroupVersionResource = GroupVersion.WithResource(IdentityResource)
IdentityGroupVersionResource is groupResourceVersion used to register these objects.
var IdentityKind = "Identity"
IdentityKind specifies the kind of the identity.
var IdentityResource = "identities"
IdentityResource is the name of the identity resources.
var RenewGroupResource = schema.GroupResource{Group: GroupVersion.Group, Resource: RenewResource}
RenewGroupResource is group resource used to register these objects.
var RenewGroupVersionResource = GroupVersion.WithResource(RenewResource)
RenewGroupVersionResource is groupResourceVersion used to register these objects.
var RenewKind = "Renew"
RenewKind specifies the kind of the renew.
var RenewResource = "renews"
RenewResource is the name of the renew resources.
var ResourceSliceGroupResource = schema.GroupResource{Group: GroupVersion.Group, Resource: ResourceSliceResource}
ResourceSliceGroupResource is group resource used to register these objects.
var ResourceSliceGroupVersionResource = GroupVersion.WithResource(ResourceSliceResource)
ResourceSliceGroupVersionResource is groupResourceVersion used to register these objects.
var ResourceSliceKind = "ResourceSlice"
ResourceSliceKind specifies the kind of the resourceSlice.
var ResourceSliceResource = "resourceslices"
ResourceSliceResource is the name of the resourceSlice resources.
var TenantGroupResource = schema.GroupResource{Group: GroupVersion.Group, Resource: TenantResource}
TenantGroupResource is group resource used to register these objects.
var TenantGroupVersionResource = GroupVersion.WithResource(TenantResource)
TenantGroupVersionResource is groupResourceVersion used to register these objects.
var TenantKind = "Tenant"
TenantKind specifies the kind of the tenant.
var TenantResource = "tenants"
TenantResource is the name of the tenant resources.
Functions ¶
This section is empty.
Types ¶
type AuthParams ¶
type AuthParams struct {
CA []byte `json:"ca,omitempty"`
SignedCRT []byte `json:"signedCRT,omitempty"`
APIServer string `json:"apiServer,omitempty"`
ProxyURL *string `json:"proxyURL,omitempty"`
AwsConfig *AwsConfig `json:"awsConfig,omitempty"`
}
AuthParams contains the authentication parameters for the tenant cluster.
func (*AuthParams) DeepCopy ¶
func (in *AuthParams) DeepCopy() *AuthParams
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthParams.
func (*AuthParams) DeepCopyInto ¶
func (in *AuthParams) DeepCopyInto(out *AuthParams)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthzPolicy ¶
type AuthzPolicy string
AuthzPolicy is the policy used by the cluster to authorize or reject an incoming ResourceSlice.
const ( // KeysExchange indicates that a keys exchange must be performed before accepting any ResourceSlice. KeysExchange AuthzPolicy = "KeysExchange" // TolerateNoHandshake indicates that the local cluster accepts ResourceSlices even when there // never have been a key exchange with the peer cluster. TolerateNoHandshake AuthzPolicy = "TolerateNoHandshake" // DefaultAuthzPolicy is the default authorization policy if nothing is provided. DefaultAuthzPolicy AuthzPolicy = KeysExchange )
func GetAuthzPolicyValue ¶
func GetAuthzPolicyValue(policy *AuthzPolicy) AuthzPolicy
GetAuthzPolicyValue returns the value of the pointer to an AuthzPolicy type, if the pointer is nil it returns the default value.
type AwsConfig ¶
type AwsConfig struct {
AwsUserArn string `json:"awsUserArn"`
AwsAccessKeyID string `json:"awsAccessKeyID"`
AwsSecretAccessKey string `json:"awsSecretAccessKey"`
AwsRegion string `json:"awsRegion"`
AwsClusterName string `json:"awsClusterName"`
}
AwsConfig contains the AWS configuration and access key for the Liqo user and the current EKS cluster.
func (*AwsConfig) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AwsConfig.
func (*AwsConfig) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Identity ¶
type Identity struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec IdentitySpec `json:"spec,omitempty"`
Status IdentityStatus `json:"status,omitempty"`
}
Identity contains the information to operate in a remote cluster.
func (*Identity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Identity.
func (*Identity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Identity) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IdentityList ¶
type IdentityList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Identity `json:"items"`
}
IdentityList contains a list of Identities.
func (*IdentityList) DeepCopy ¶
func (in *IdentityList) DeepCopy() *IdentityList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityList.
func (*IdentityList) DeepCopyInto ¶
func (in *IdentityList) DeepCopyInto(out *IdentityList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*IdentityList) DeepCopyObject ¶
func (in *IdentityList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type IdentitySpec ¶
type IdentitySpec struct {
// ClusterID is the identity of the provider cluster.
ClusterID liqov1beta1.ClusterID `json:"clusterID,omitempty"`
// Type is the type of the identity.
// +kubebuilder:validation:Enum=ControlPlane;ResourceSlice
Type IdentityType `json:"type,omitempty"`
// AuthParams contains the parameters to create an Identity to use in the provider cluster.
AuthParams AuthParams `json:"authParams,omitempty"`
// Namespace is the namespace where to use the identity.
// +kubebuilder:validation:Optional
Namespace *string `json:"namespace,omitempty"`
}
IdentitySpec defines the desired state of Identity.
func (*IdentitySpec) DeepCopy ¶
func (in *IdentitySpec) DeepCopy() *IdentitySpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentitySpec.
func (*IdentitySpec) DeepCopyInto ¶
func (in *IdentitySpec) DeepCopyInto(out *IdentitySpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityStatus ¶
type IdentityStatus struct {
// KubeconfigSecretRef contains the reference to the secret containing the kubeconfig to access the provider cluster.
KubeconfigSecretRef *corev1.LocalObjectReference `json:"kubeconfigSecretRef,omitempty"`
}
IdentityStatus defines the observed state of Identity.
func (*IdentityStatus) DeepCopy ¶
func (in *IdentityStatus) DeepCopy() *IdentityStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IdentityStatus.
func (*IdentityStatus) DeepCopyInto ¶
func (in *IdentityStatus) DeepCopyInto(out *IdentityStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IdentityType ¶
type IdentityType string
IdentityType is the type of the Identity. It can be either "ControlPlane" or "VirtualNode":
- ControlPlane: identity that gives the permissions to replicate resources to the remote cluster through the CrdReplicator.
- VirtualNode: identity that gives the permissions to create a virtual node.
const ( // ControlPlaneIdentityType indicates an Identity of type ControlPlane. ControlPlaneIdentityType IdentityType = "ControlPlane" // ResourceSliceIdentityType indicates an Identity of type ResourceSlice. ResourceSliceIdentityType IdentityType = "ResourceSlice" )
type Renew ¶
type Renew struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec RenewSpec `json:"spec,omitempty"`
Status RenewStatus `json:"status,omitempty"`
}
Renew represents a slice of resources given by the provider cluster to the consumer cluster.
func (*Renew) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Renew.
func (*Renew) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Renew) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RenewList ¶
type RenewList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Renew `json:"items"`
}
RenewList contains a list of Renews.
func (*RenewList) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RenewList.
func (*RenewList) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*RenewList) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type RenewSpec ¶
type RenewSpec struct {
// ConsumerClusterID is the id of the consumer cluster.
ConsumerClusterID liqov1beta1.ClusterID `json:"consumerClusterID,omitempty"`
// PublicKey is the public key of the tenant cluster.
PublicKey []byte `json:"publicKey,omitempty"`
// CSR is the Certificate Signing Request of the tenant cluster.
CSR []byte `json:"csr,omitempty"`
// IdentityType is the type of the identity.
IdentityType IdentityType `json:"identityType,omitempty"`
// ResoruceSliceRef is the reference to the resource slice.
ResourceSliceRef *corev1.LocalObjectReference `json:"resourceSliceRef,omitempty"`
}
RenewSpec defines the desired state of Renew.
func (*RenewSpec) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RenewSpec.
func (*RenewSpec) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RenewStatus ¶
type RenewStatus struct {
// AuthParams contains the authentication parameters for the consumer cluster.
AuthParams *AuthParams `json:"authParams,omitempty"`
}
RenewStatus defines the observed state of Renew.
func (*RenewStatus) DeepCopy ¶
func (in *RenewStatus) DeepCopy() *RenewStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RenewStatus.
func (*RenewStatus) DeepCopyInto ¶
func (in *RenewStatus) DeepCopyInto(out *RenewStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceSlice ¶
type ResourceSlice struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec ResourceSliceSpec `json:"spec,omitempty"`
Status ResourceSliceStatus `json:"status,omitempty"`
}
ResourceSlice represents a slice of resources given by the provider cluster to the consumer cluster.
func (*ResourceSlice) DeepCopy ¶
func (in *ResourceSlice) DeepCopy() *ResourceSlice
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSlice.
func (*ResourceSlice) DeepCopyInto ¶
func (in *ResourceSlice) DeepCopyInto(out *ResourceSlice)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResourceSlice) DeepCopyObject ¶
func (in *ResourceSlice) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ResourceSliceClass ¶
type ResourceSliceClass string
ResourceSliceClass is the class of the ResourceSlice.
const ( // ResourceSliceClassUnknown is the unknown class of the ResourceSlice. ResourceSliceClassUnknown ResourceSliceClass = "" // ResourceSliceClassDefault is the default class of the ResourceSlice. ResourceSliceClassDefault ResourceSliceClass = "default" )
type ResourceSliceCondition ¶
type ResourceSliceCondition struct {
// Type of the condition.
// +kubebuilder:validation:Enum="Authentication";"Resources"
Type ResourceSliceConditionType `json:"type"`
// Status of the condition.
// +kubebuilder:validation:Enum="Accepted";"Denied"
Status ResourceSliceConditionStatus `json:"status"`
// LastTransitionTime -> timestamp for when the condition last transitioned from one status to another.
LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
// Reason -> Machine-readable, UpperCamelCase text indicating the reason for the condition's last transition.
Reason string `json:"reason,omitempty"`
// Message -> Human-readable message indicating details about the last status transition.
Message string `json:"message,omitempty"`
}
ResourceSliceCondition contains details about the status of the provided ResourceSlice.
func (*ResourceSliceCondition) DeepCopy ¶
func (in *ResourceSliceCondition) DeepCopy() *ResourceSliceCondition
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSliceCondition.
func (*ResourceSliceCondition) DeepCopyInto ¶
func (in *ResourceSliceCondition) DeepCopyInto(out *ResourceSliceCondition)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceSliceConditionStatus ¶
type ResourceSliceConditionStatus string
ResourceSliceConditionStatus represents different status conditions that a ResourceSlice could assume.
const ( // ResourceSliceConditionAccepted informs users that the resources are available. ResourceSliceConditionAccepted ResourceSliceConditionStatus = "Accepted" // ResourceSliceConditionDenied informs users that the resources are not available. ResourceSliceConditionDenied ResourceSliceConditionStatus = "Denied" )
These are valid conditions of a ResourceSlice.
type ResourceSliceConditionType ¶
type ResourceSliceConditionType string
ResourceSliceConditionType represents different types of conditions that a ResourceSlice could assume.
const ( // ResourceSliceConditionTypeAuthentication informs users that the authentication of the ResourceSlice is in progress. ResourceSliceConditionTypeAuthentication ResourceSliceConditionType = "Authentication" // ResourceSliceConditionTypeResources informs users that the resources of the ResourceSlice are in progress. ResourceSliceConditionTypeResources ResourceSliceConditionType = "Resources" )
type ResourceSliceList ¶
type ResourceSliceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []ResourceSlice `json:"items"`
}
ResourceSliceList contains a list of ResourceSlices.
func (*ResourceSliceList) DeepCopy ¶
func (in *ResourceSliceList) DeepCopy() *ResourceSliceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSliceList.
func (*ResourceSliceList) DeepCopyInto ¶
func (in *ResourceSliceList) DeepCopyInto(out *ResourceSliceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ResourceSliceList) DeepCopyObject ¶
func (in *ResourceSliceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ResourceSliceSpec ¶
type ResourceSliceSpec struct {
// ConsumerClusterID is the id of the consumer cluster.
ConsumerClusterID *liqov1beta1.ClusterID `json:"consumerClusterID,omitempty"`
// ProviderClusterID is the id of the provider cluster.
ProviderClusterID *liqov1beta1.ClusterID `json:"providerClusterID,omitempty"`
// Resources contains the slice of resources requested.
Resources corev1.ResourceList `json:"resources,omitempty"`
// Class contains the class of the ResourceSlice.
Class ResourceSliceClass `json:"class,omitempty"`
// CSR is the Certificate Signing Request of the consumer cluster.
CSR []byte `json:"csr,omitempty"`
}
ResourceSliceSpec defines the desired state of ResourceSlice.
func (*ResourceSliceSpec) DeepCopy ¶
func (in *ResourceSliceSpec) DeepCopy() *ResourceSliceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSliceSpec.
func (*ResourceSliceSpec) DeepCopyInto ¶
func (in *ResourceSliceSpec) DeepCopyInto(out *ResourceSliceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceSliceStatus ¶
type ResourceSliceStatus struct {
// Conditions contains the conditions of the ResourceSlice.
Conditions []ResourceSliceCondition `json:"conditions,omitempty"`
// Resources contains the slice of resources accepted.
Resources corev1.ResourceList `json:"resources,omitempty"`
// AuthParams contains the authentication parameters for the resources given by the provider cluster.
AuthParams *AuthParams `json:"authParams,omitempty"`
// StorageClasses contains the list of the storage classes offered by the cluster.
StorageClasses []liqov1beta1.StorageType `json:"storageClasses,omitempty"`
// IngressClasses contains the list of the ingress classes offered by the cluster.
IngressClasses []liqov1beta1.IngressType `json:"ingressClasses,omitempty"`
// LoadBalancerClasses contains the list of the load balancer classes offered by the cluster.
LoadBalancerClasses []liqov1beta1.LoadBalancerType `json:"loadBalancerClasses,omitempty"`
// NodeLabels contains the provider cluster labels.
NodeLabels map[string]string `json:"nodeLabels,omitempty"`
// NodeSelector contains the selector to be applied to offloaded pods.
NodeSelector map[string]string `json:"nodeSelector,omitempty"`
}
ResourceSliceStatus defines the observed state of ResourceSlice.
func (*ResourceSliceStatus) DeepCopy ¶
func (in *ResourceSliceStatus) DeepCopy() *ResourceSliceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSliceStatus.
func (*ResourceSliceStatus) DeepCopyInto ¶
func (in *ResourceSliceStatus) DeepCopyInto(out *ResourceSliceStatus)
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"`
Status TenantStatus `json:"status,omitempty"`
}
Tenant represents a consumer cluster.
func (*Tenant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Tenant.
func (*Tenant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Tenant) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TenantCondition ¶
type TenantCondition string
TenantCondition contains the conditions of the tenant.
const ( // TenantConditionActive indicates that the tenant is active: it can consume resources and negotiate new ones. TenantConditionActive TenantCondition = "Active" // TenantConditionCordoned indicates that the tenant is cordoned: the existing resources are preserved (and cordoned), // but no new ones can be negotiated. TenantConditionCordoned TenantCondition = "Cordoned" // TenantConditionDrained indicates that the tenant is drained: it can't consume resources nor negotiate new ones. TenantConditionDrained TenantCondition = "Drained" )
type TenantList ¶
type TenantList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []Tenant `json:"items"`
}
TenantList contains a list of Tenant.
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 {
// ClusterID is the id of the consumer cluster.
// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="ClusterID is immutable"
ClusterID liqov1beta1.ClusterID `json:"clusterID,omitempty"`
// AuthzPolicy is the policy used by the cluster to authorize or reject an incoming ResourceSlice.
// Default is KeysExchange.
// +kubebuilder:validation:Enum=KeysExchange;TolerateNoHandshake
// +kubebuilder:default=KeysExchange
*AuthzPolicy `json:"authzPolicy,omitempty"`
// PublicKey is the public key of the tenant cluster.
PublicKey []byte `json:"publicKey,omitempty"`
// CSR is the Certificate Signing Request of the tenant cluster.
CSR []byte `json:"csr,omitempty"`
// Signature contains the nonce signed by the tenant cluster.
Signature []byte `json:"signature,omitempty"`
// ProxyURL is the URL of the proxy used by the tenant cluster to connect to the local cluster (optional).
ProxyURL *string `json:"proxyURL,omitempty"`
// TenantCondition contains the conditions of the tenant.
// +kubebuilder:validation:Enum=Active;Cordoned;Drained
// +kubebuilder:default=Active
TenantCondition TenantCondition `json:"tenantCondition,omitempty"`
}
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 TenantStatus ¶
type TenantStatus struct {
// TenantNamespace is the namespace of the tenant cluster.
TenantNamespace string `json:"tenantNamespace,omitempty"`
// AuthParams contains the authentication parameters for the consumer cluster.
AuthParams *AuthParams `json:"authParams,omitempty"`
}
TenantStatus defines the observed state of Tenant.
func (*TenantStatus) DeepCopy ¶
func (in *TenantStatus) DeepCopy() *TenantStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TenantStatus.
func (*TenantStatus) DeepCopyInto ¶
func (in *TenantStatus) DeepCopyInto(out *TenantStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.