v1alpha1

package
v0.0.0-...-6243be3 Latest Latest
Warning

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

Go to latest
Published: Feb 20, 2025 License: Apache-2.0 Imports: 17 Imported by: 1

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the oran v1alpha1 API group +kubebuilder:object:generate=true +groupName=o2ims.provisioning.oran.org

Index

Constants

View Source
const (
	TemplateParamClusterInstance = "clusterInstanceParameters"
	TemplateParamPolicyConfig    = "policyTemplateParameters"
)

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "o2ims.provisioning.oran.org", 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
)
View Source
var CRconditionReasons = struct {
	NotApplied      ConditionReason
	ClusterNotReady ConditionReason
	Completed       ConditionReason
	Failed          ConditionReason
	InProgress      ConditionReason
	Missing         ConditionReason
	OutOfDate       ConditionReason
	TimedOut        ConditionReason
	Unknown         ConditionReason
}{
	NotApplied:      "NotApplied",
	ClusterNotReady: "ClusterNotReady",
	Completed:       "Completed",
	Failed:          "Failed",
	InProgress:      "InProgress",
	Missing:         "Missing",
	OutOfDate:       "OutOfDate",
	TimedOut:        "TimedOut",
	Unknown:         "Unknown",
}

The following constants define the different reasons that conditions will be set for ProvisioningRequest

View Source
var CTconditionReasons = struct {
	Completed ConditionReason
	Failed    ConditionReason
}{
	Completed: "Completed",
	Failed:    "Failed",
}

The following constants define the different reasons that conditions will be set for ClusterTemplate

View Source
var CTconditionTypes = struct {
	Validated ConditionType
}{
	Validated: "ClusterTemplateValidated",
}

The following constants define the different types of conditions that will be set for ClusterTemplate

View Source
var PRconditionTypes = struct {
	Validated                 ConditionType
	HardwareTemplateRendered  ConditionType
	HardwareProvisioned       ConditionType
	HardwareNodeConfigApplied ConditionType
	HardwareConfigured        ConditionType
	ClusterInstanceRendered   ConditionType
	ClusterResourcesCreated   ConditionType
	ClusterInstanceProcessed  ConditionType
	ClusterProvisioned        ConditionType
	ConfigurationApplied      ConditionType
	UpgradeCompleted          ConditionType
}{
	Validated:                 "ProvisioningRequestValidated",
	HardwareTemplateRendered:  "HardwareTemplateRendered",
	HardwareProvisioned:       "HardwareProvisioned",
	HardwareNodeConfigApplied: "HardwareNodeConfigApplied",
	HardwareConfigured:        "HardwareConfigured",
	ClusterInstanceRendered:   "ClusterInstanceRendered",
	ClusterResourcesCreated:   "ClusterResourcesCreated",
	ClusterInstanceProcessed:  "ClusterInstanceProcessed",
	ClusterProvisioned:        "ClusterProvisioned",
	ConfigurationApplied:      "ConfigurationApplied",
	UpgradeCompleted:          "UpgradeCompleted",
}

The following constants define the different types of conditions that will be set for ProvisioningRequest

Functions

func ExtractMatchingInput

func ExtractMatchingInput(parentSchema []byte, subSchemaKey string) (any, error)

ExtractMatchingInput extracts the portion of the input data that corresponds to a given subSchema key.

func ExtractSubSchema

func ExtractSubSchema(mainSchema []byte, subSchemaKey string) (subSchema map[string]any, err error)

func FindClusterInstanceImmutableFieldUpdates

func FindClusterInstanceImmutableFieldUpdates(
	old, new map[string]any, ignoredFields [][]string) ([]string, []string, error)

FindClusterInstanceImmutableFieldUpdates identifies updates made to immutable fields in the ClusterInstance fields. It returns two lists of paths: a list of updated fields that are considered immutable and should not be modified and a list of fields related to node scaling, indicating nodes that were added or removed.

func ValidateJsonAgainstJsonSchema

func ValidateJsonAgainstJsonSchema(schema, input any) error

ValidateJsonAgainstJsonSchema validates the input against the schema.

Types

type ClusterDetails

type ClusterDetails struct {
	// Contains the name of the created ClusterInstance.
	Name string `json:"name,omitempty"`

	// Says if ZTP has complete or not.
	ZtpStatus string `json:"ztpStatus,omitempty"`

	// A timestamp indicating the cluster provisoning has started
	ClusterProvisionStartedAt *metav1.Time `json:"clusterProvisionStartedAt,omitempty"`

	// Holds the first timestamp when the configuration was found NonCompliant for the cluster.
	NonCompliantAt *metav1.Time `json:"nonCompliantAt,omitempty"`
}

func (*ClusterDetails) DeepCopy

func (in *ClusterDetails) DeepCopy() *ClusterDetails

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

func (*ClusterDetails) DeepCopyInto

func (in *ClusterDetails) DeepCopyInto(out *ClusterDetails)

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

type ClusterTemplate

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

	Spec   ClusterTemplateSpec   `json:"spec,omitempty"`
	Status ClusterTemplateStatus `json:"status,omitempty"`
}

ClusterTemplate is the Schema for the clustertemplates API +kubebuilder:validation:XValidation:message="Spec changes are not allowed for a ClusterTemplate that has passed the validation", rule="!has(oldSelf.status) || oldSelf.status.conditions.exists(c, c.type=='ClusterTemplateValidated' && c.status=='False') || oldSelf.spec == self.spec" +kubebuilder:validation:XValidation:message="metadata.name must be in the form of spec.name + '.' + spec.version", rule="self.metadata.name == (self.spec.name + '.' + self.spec.version)" +operator-sdk:csv:customresourcedefinitions:displayName="ORAN O2IMS Cluster Template",resources={{ConfigMap, v1}}

func (*ClusterTemplate) DeepCopy

func (in *ClusterTemplate) DeepCopy() *ClusterTemplate

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

func (*ClusterTemplate) DeepCopyInto

func (in *ClusterTemplate) DeepCopyInto(out *ClusterTemplate)

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

func (*ClusterTemplate) DeepCopyObject

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

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

type ClusterTemplateList

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

ClusterTemplateList contains a list of ClusterTemplate

func (*ClusterTemplateList) DeepCopy

func (in *ClusterTemplateList) DeepCopy() *ClusterTemplateList

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

func (*ClusterTemplateList) DeepCopyInto

func (in *ClusterTemplateList) DeepCopyInto(out *ClusterTemplateList)

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

func (*ClusterTemplateList) DeepCopyObject

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

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

type ClusterTemplateSpec

type ClusterTemplateSpec struct {

	// Name defines a Human readable name of the Template.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Name",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Name string `json:"name"`
	// Description defines a Human readable description of the Template.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Description",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Description string `json:"description,omitempty"`
	// Version defines a version or generation of the resource as defined by its provider.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Version string `json:"version"`
	// TemplateId defines a Identifier for the O-Cloud Template. This identifier is allocated by the O-Cloud.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="TemplateId",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	TemplateID string `json:"templateId,omitempty"`
	// Characteristics defines a List of key/value pairs describing characteristics associated with the template.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Characteristics",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Characteristics map[string]string `json:"characteristics,omitempty"`
	// Metadata defines a List of key/value pairs describing metadata associated with the template.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Metadata",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Metadata map[string]string `json:"metadata,omitempty"`
	// Release defines the openshift release version of the template
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Release",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Release string `json:"release"`
	// Templates defines the references to the templates required for ClusterTemplate.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Templates",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Templates Templates `json:"templates"`
	// TemplateParameterSchema defines the parameters required for ClusterTemplate.
	// The parameter definitions should follow the OpenAPI V3 schema and
	// explicitly define required fields.
	// +kubebuilder:validation:Type=object
	// +kubebuilder:pruning:PreserveUnknownFields
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Template Parameter Schema",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	TemplateParameterSchema runtime.RawExtension `json:"templateParameterSchema"`
}

ClusterTemplateSpec defines the desired state of ClusterTemplate

func (*ClusterTemplateSpec) DeepCopy

func (in *ClusterTemplateSpec) DeepCopy() *ClusterTemplateSpec

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

func (*ClusterTemplateSpec) DeepCopyInto

func (in *ClusterTemplateSpec) DeepCopyInto(out *ClusterTemplateSpec)

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

type ClusterTemplateStatus

type ClusterTemplateStatus struct {

	//+operator-sdk:csv:customresourcedefinitions:type=status
	Conditions []metav1.Condition `json:"conditions,omitempty"`
}

ClusterTemplateStatus defines the observed state of ClusterTemplate

func (*ClusterTemplateStatus) DeepCopy

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

func (*ClusterTemplateStatus) DeepCopyInto

func (in *ClusterTemplateStatus) DeepCopyInto(out *ClusterTemplateStatus)

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

type ConditionReason

type ConditionReason string

ConditionReason is a string representing the condition's reason

type ConditionType

type ConditionType string

ConditionType is a string representing the condition's type

type Extensions

type Extensions struct {
	// ClusterDetails references to the ClusterInstance.
	ClusterDetails *ClusterDetails `json:"clusterDetails,omitempty"`

	// NodePoolRef references to the NodePool.
	NodePoolRef *NodePoolRef `json:"nodePoolRef,omitempty"`

	// Holds policies that are matched with the ManagedCluster created by the ProvisioningRequest.
	Policies []PolicyDetails `json:"policies,omitempty"`
}

func (*Extensions) DeepCopy

func (in *Extensions) DeepCopy() *Extensions

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

func (*Extensions) DeepCopyInto

func (in *Extensions) DeepCopyInto(out *Extensions)

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

type NodePoolRef

type NodePoolRef struct {
	// Contains the name of the created NodePool.
	Name string `json:"name,omitempty"`
	// Contains the namespace of the created NodePool.
	Namespace string `json:"namespace,omitempty"`
	// Represents the timestamp of the first status check for hardware provisioning
	HardwareProvisioningCheckStart *metav1.Time `json:"hardwareProvisioningCheckStart,omitempty"`
	// Represents the timestamp of the first status check for hardware configuring
	HardwareConfiguringCheckStart *metav1.Time `json:"hardwareConfiguringCheckStart,omitempty"`
}

NodePoolRef references a node pool.

func (*NodePoolRef) DeepCopy

func (in *NodePoolRef) DeepCopy() *NodePoolRef

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

func (*NodePoolRef) DeepCopyInto

func (in *NodePoolRef) DeepCopyInto(out *NodePoolRef)

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

type PolicyDetails

type PolicyDetails struct {
	// The compliance of the ManagedCluster created through a ProvisioningRequest with the current
	// policy.
	Compliant string `json:"compliant,omitempty"`
	// The policy's name.
	PolicyName string `json:"policyName,omitempty"`
	// The policy's namespace.
	PolicyNamespace string `json:"policyNamespace,omitempty"`
	// The policy's remediation action.
	RemediationAction string `json:"remediationAction,omitempty"`
}

PolicyDetails holds information about an ACM policy.

func (*PolicyDetails) DeepCopy

func (in *PolicyDetails) DeepCopy() *PolicyDetails

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

func (*PolicyDetails) DeepCopyInto

func (in *PolicyDetails) DeepCopyInto(out *PolicyDetails)

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

type ProvisionedResources

type ProvisionedResources struct {
	// The identifier of the provisioned oCloud Node Cluster.
	OCloudNodeClusterId string `json:"oCloudNodeClusterId,omitempty"`
}

ProvisionedResources contains the resources that were provisioned as part of the provisioning process.

func (*ProvisionedResources) DeepCopy

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

func (*ProvisionedResources) DeepCopyInto

func (in *ProvisionedResources) DeepCopyInto(out *ProvisionedResources)

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

type ProvisioningPhase

type ProvisioningPhase string

ProvisioningPhase defines the various phases of the provisioning process.

const (
	// StatePending indicates that the provisioning process is either waiting to start
	// or is preparing to apply new changes. This state is set when the ProvisioningRequest
	// is observed with new spec changes, during validation and resource preparation,
	// before the actual provisioning begins.
	StatePending ProvisioningPhase = "pending"

	// StateProgressing means the provisioning process is currently in progress.
	// It could be in progress during hardware provisioning, cluster installation, or cluster configuration.
	StateProgressing ProvisioningPhase = "progressing"

	// StateFulfilled means the provisioning process has been successfully completed for all stages.
	StateFulfilled ProvisioningPhase = "fulfilled"

	// StateFailed means the provisioning process has failed at any stage, including resource validation
	// and preparation prior to provisioning, hardware provisioning, cluster installation, or cluster configuration.
	StateFailed ProvisioningPhase = "failed"

	// StateDeleting indicates that the provisioning resources are in the process of being deleted.
	// This state is set when the deletion process for the ProvisioningRequest and its resources
	// has started, ensuring that all dependent resources are removed before finalizing the
	// ProvisioningRequest deletion.
	StateDeleting ProvisioningPhase = "deleting"
)

type ProvisioningRequest

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

	Spec   ProvisioningRequestSpec   `json:"spec,omitempty"`
	Status ProvisioningRequestStatus `json:"status,omitempty"`
}

ProvisioningRequest is the Schema for the provisioningrequests API +operator-sdk:csv:customresourcedefinitions:displayName="ORAN O2IMS Provisioning Request",resources={{Namespace, v1},{ClusterInstance, siteconfig.open-cluster-management.io/v1alpha1}}

func (*ProvisioningRequest) DeepCopy

func (in *ProvisioningRequest) DeepCopy() *ProvisioningRequest

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

func (*ProvisioningRequest) DeepCopyInto

func (in *ProvisioningRequest) DeepCopyInto(out *ProvisioningRequest)

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

func (*ProvisioningRequest) DeepCopyObject

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

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

func (*ProvisioningRequest) GetClusterTemplateRef

func (r *ProvisioningRequest) GetClusterTemplateRef(ctx context.Context, client client.Client) (*ClusterTemplate, error)

func (*ProvisioningRequest) SetupWebhookWithManager

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

SetupWebhookWithManager will setup the manager to manage the webhooks

func (*ProvisioningRequest) ValidateClusterInstanceInputMatchesSchema

func (r *ProvisioningRequest) ValidateClusterInstanceInputMatchesSchema(
	clusterTemplate *ClusterTemplate) (any, error)

ValidateClusterInstanceInputMatchesSchema validates that the ClusterInstance input from the ProvisioningRequest matches the schema defined in the ClusterTemplate. If valid, the merged ClusterInstance data is stored in the clusterInput.

func (*ProvisioningRequest) ValidateTemplateInputMatchesSchema

func (r *ProvisioningRequest) ValidateTemplateInputMatchesSchema(
	clusterTemplate *ClusterTemplate) error

validateTemplateInputMatchesSchema validates the input parameters from the ProvisioningRequest against the schema defined in the ClusterTemplate. This function focuses on validating the input other than clusterInstanceParameters and policyTemplateParameters, as those will be validated separately. It ensures the input parameters have the expected types and any required parameters are present.

type ProvisioningRequestList

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

ProvisioningRequestList contains a list of ProvisioningRequest

func (*ProvisioningRequestList) DeepCopy

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

func (*ProvisioningRequestList) DeepCopyInto

func (in *ProvisioningRequestList) DeepCopyInto(out *ProvisioningRequestList)

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

func (*ProvisioningRequestList) DeepCopyObject

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

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

type ProvisioningRequestSpec

type ProvisioningRequestSpec struct {

	// Name specifies a human-readable name for this provisioning request, intended for identification and descriptive purposes.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Name",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Name string `json:"name,omitempty"`

	// Description specifies a brief description of this provisioning request, providing additional context or details.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Description",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Description string `json:"description,omitempty"`

	// TemplateName defines the base name of the referenced ClusterTemplate.
	// The full name of the ClusterTemplate is constructed as <TemplateName.TemplateVersion>.
	// +kubebuilder:validation:MinLength=1
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Template Name",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	TemplateName string `json:"templateName"`

	// TemplateVersion defines the version of the referenced ClusterTemplate.
	// The full name of the ClusterTemplate is constructed as <TemplateName.TemplateVersion>.
	// +kubebuilder:validation:MinLength=1
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Template Version",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	TemplateVersion string `json:"templateVersion"`

	// TemplateParameters provides the input data that conforms to the OpenAPI v3 schema defined in the referenced ClusterTemplate's spec.templateParameterSchema.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Template Parameters",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	TemplateParameters runtime.RawExtension `json:"templateParameters"`

	// Extensions holds additional custom key-value pairs that can be used to extend the cluster's configuration.
	//+operator-sdk:csv:customresourcedefinitions:type=spec,displayName="Extensions",xDescriptors={"urn:alm:descriptor:com.tectonic.ui:text"}
	Extensions runtime.RawExtension `json:"extensions,omitempty"`
}

ProvisioningRequestSpec defines the desired state of ProvisioningRequest

func (*ProvisioningRequestSpec) DeepCopy

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

func (*ProvisioningRequestSpec) DeepCopyInto

func (in *ProvisioningRequestSpec) DeepCopyInto(out *ProvisioningRequestSpec)

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

type ProvisioningRequestStatus

type ProvisioningRequestStatus struct {

	//+operator-sdk:csv:customresourcedefinitions:type=status
	Conditions []metav1.Condition `json:"conditions,omitempty"`

	// Extensions contain extra details about the resources and the configuration used for/by
	// the ProvisioningRequest.
	Extensions Extensions `json:"extensions,omitempty"`

	ProvisioningStatus ProvisioningStatus `json:"provisioningStatus,omitempty"`

	// ObservedGeneration is the most recent generation observed by the controller.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
}

ProvisioningRequestStatus defines the observed state of ProvisioningRequest

func (*ProvisioningRequestStatus) DeepCopy

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

func (*ProvisioningRequestStatus) DeepCopyInto

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

type ProvisioningStatus

type ProvisioningStatus struct {
	// The current state of the provisioning process.
	// +kubebuilder:validation:Enum=pending;progressing;fulfilled;failed;deleting
	ProvisioningPhase ProvisioningPhase `json:"provisioningPhase,omitempty"`

	// The details about the current state of the provisioning process.
	ProvisioningDetails string `json:"provisioningDetails,omitempty"`

	// The resources that have been successfully provisioned as part of the provisioning process.
	ProvisionedResources *ProvisionedResources `json:"provisionedResources,omitempty"`

	// The timestamp of the last update to the provisioning status.
	UpdateTime metav1.Time `json:"updateTime,omitempty"`
}

func (*ProvisioningStatus) DeepCopy

func (in *ProvisioningStatus) DeepCopy() *ProvisioningStatus

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

func (*ProvisioningStatus) DeepCopyInto

func (in *ProvisioningStatus) DeepCopyInto(out *ProvisioningStatus)

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

type Templates

type Templates struct {
	// HwTemplate defines a reference to a HardwareTemplate resource
	HwTemplate string `json:"hwTemplate,omitempty"`

	// ClusterInstanceDefaults defines a reference to a configmap with
	// default values for ClusterInstance
	ClusterInstanceDefaults string `json:"clusterInstanceDefaults"`
	// PolicyTemplateDefaults defines a reference to a configmap with
	// default values for ACM policies
	PolicyTemplateDefaults string `json:"policyTemplateDefaults"`
	// UpgradeDefaults defines a reference to a configmap with
	// default values for upgrade information
	UpgradeDefaults string `json:"upgradeDefaults,omitempty"`
}

Templates defines the references to the templates required for ClusterTemplate.

func (*Templates) DeepCopy

func (in *Templates) DeepCopy() *Templates

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

func (*Templates) DeepCopyInto

func (in *Templates) DeepCopyInto(out *Templates)

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