v1alpha1

package
v0.0.0-...-e9c822e Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2024 License: Apache-2.0 Imports: 7 Imported by: 2

Documentation

Overview

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

Index

Constants

View Source
const (
	ProjectReferenceNamespace string = "gcp-project-operator"
)

ProjectReferenceNamespace namespace, where ProjectReference CRs will be created

Variables

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

Types

type ClaimStatus

type ClaimStatus string

ClaimStatus is a valid value from ProjectClaim.Status

const (
	// ClaimStatusPending pending status for a claim
	ClaimStatusPending ClaimStatus = "Pending"
	// ClaimStatusPendingProject pending project status for a claim
	ClaimStatusPendingProject ClaimStatus = "PendingProject"
	// ClaimStatusReady ready status for a claim
	ClaimStatusReady ClaimStatus = "Ready"
	// ClaimStatusError error status for a claim
	ClaimStatusError ClaimStatus = "Error"
	// ClaimStatusVerification pending verification status for a claim
	ClaimStatusVerification ClaimStatus = "Verification"
)

type Condition

type Condition struct {
	// Type is the type of the condition.
	Type ConditionType `json:"type"`
	// Status is the status of the condition.
	Status corev1.ConditionStatus `json:"status"`
	// LastProbeTime is the last time we probed the condition.
	// +optional
	LastProbeTime metav1.Time `json:"lastProbeTime,omitempty"`
	// LastTransitionTime is the last time the condition transitioned from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// Reason is a unique, one-word, CamelCase reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Message is a human-readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

Condition contains details for the current condition of a custom resource

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

type ConditionType

type ConditionType string

ConditionType is a valid value for Condition.Type

const (
	// ConditionReady is set when a Project custom resource state changes Ready state
	ConditionReady ConditionType = "Ready"
	// ConditionPending is set when a project custom resource state changes to Pending
	ConditionPending ConditionType = "Pending"
	// ConditionVerification is set when a project custom resource state changes to Verification state
	ConditionVerification ConditionType = "Verification"
	// ConditionError is set when a project custom resource state changes to Error
	ConditionError ConditionType = "Error"
	// ConditionInvalid is set when a project custom resource has an invalid or unsupported configuration
	ConditionInvalid ConditionType = "Invalid"
	// ConditionComputeApiReady is set when the compute API is not yet ready
	ConditionComputeApiReady ConditionType = "ComputeApiReady"
)

type LegalEntity

type LegalEntity struct {
	Name string `json:"name"`
	ID   string `json:"id"`
}

LegalEntity contains Red Hat specific identifiers to the original creator the clusters

func (*LegalEntity) DeepCopy

func (in *LegalEntity) DeepCopy() *LegalEntity

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

func (*LegalEntity) DeepCopyInto

func (in *LegalEntity) DeepCopyInto(out *LegalEntity)

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

type NamespacedName

type NamespacedName struct {
	Namespace string `json:"namespace"`
	Name      string `json:"name"`
}

NamespacedName contains the name of a object and its namespace

func (*NamespacedName) DeepCopy

func (in *NamespacedName) DeepCopy() *NamespacedName

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

func (*NamespacedName) DeepCopyInto

func (in *NamespacedName) DeepCopyInto(out *NamespacedName)

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

type ProjectClaim

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

	Spec   ProjectClaimSpec   `json:"spec,omitempty"`
	Status ProjectClaimStatus `json:"status,omitempty"`
}

ProjectClaim is the Schema for the projectclaims API +kubebuilder:object:root=true +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state",description="Status of the project claim" +kubebuilder:printcolumn:name="GCPProjectID",type="string",JSONPath=".spec.gcpProjectID",description="ID of the GCP Project that has been created" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="Age since the project claim was created"

func (*ProjectClaim) DeepCopy

func (in *ProjectClaim) DeepCopy() *ProjectClaim

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

func (*ProjectClaim) DeepCopyInto

func (in *ProjectClaim) DeepCopyInto(out *ProjectClaim)

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

func (*ProjectClaim) DeepCopyObject

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

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

type ProjectClaimList

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

+kubebuilder:object:root=true ProjectClaimList contains a list of ProjectClaim

func (*ProjectClaimList) DeepCopy

func (in *ProjectClaimList) DeepCopy() *ProjectClaimList

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

func (*ProjectClaimList) DeepCopyInto

func (in *ProjectClaimList) DeepCopyInto(out *ProjectClaimList)

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

func (*ProjectClaimList) DeepCopyObject

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

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

type ProjectClaimSpec

type ProjectClaimSpec struct {
	LegalEntity            LegalEntity    `json:"legalEntity"`
	GCPCredentialSecret    NamespacedName `json:"gcpCredentialSecret"`
	Region                 string         `json:"region"`
	GCPProjectID           string         `json:"gcpProjectID,omitempty"`
	ProjectReferenceCRLink NamespacedName `json:"projectReferenceCRLink,omitempty"`
	// +listType=atomic
	AvailabilityZones []string       `json:"availabilityZones,omitempty"`
	CCS               bool           `json:"ccs,omitempty"`
	CCSSecretRef      NamespacedName `json:"ccsSecretRef,omitempty"`
	CCSProjectID      string         `json:"ccsProjectID,omitempty"`
	SharedVPCAccess   bool           `json:"sharedVPCAccess,omitempty"`
}

ProjectClaimSpec defines the desired state of ProjectClaim +k8s:openapi-gen=true

func (*ProjectClaimSpec) DeepCopy

func (in *ProjectClaimSpec) DeepCopy() *ProjectClaimSpec

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

func (*ProjectClaimSpec) DeepCopyInto

func (in *ProjectClaimSpec) DeepCopyInto(out *ProjectClaimSpec)

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

type ProjectClaimStatus

type ProjectClaimStatus struct {
	// +listType=atomic
	Conditions []Condition `json:"conditions"`
	State      ClaimStatus `json:"state"`
}

ProjectClaimStatus defines the observed state of ProjectClaim +k8s:openapi-gen=true

func (*ProjectClaimStatus) DeepCopy

func (in *ProjectClaimStatus) DeepCopy() *ProjectClaimStatus

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

func (*ProjectClaimStatus) DeepCopyInto

func (in *ProjectClaimStatus) DeepCopyInto(out *ProjectClaimStatus)

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

type ProjectReference

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

	Spec   ProjectReferenceSpec   `json:"spec,omitempty"`
	Status ProjectReferenceStatus `json:"status,omitempty"`
}

+kubebuilder:object:root=true +kubebuilder:subresource:status +k8s:openapi-gen=true +kubebuilder:printcolumn:name="State",type="string",JSONPath=".status.state",description="Status of the ProjectReference" +kubebuilder:printcolumn:name="ClaimName",type="string",JSONPath=".spec.projectClaimCRLink.name",description="Name of corresponding project claim CR" +kubebuilder:printcolumn:name="ClaimNameSpace",type="string",JSONPath=".spec.projectClaimCRLink.namespace",description="Namesspace of corresponding project claim CR" +kubebuilder:printcolumn:name="Age",type="date",JSONPath=".metadata.creationTimestamp",description="Age since the ProjectReference was created" ProjectReference is the Schema for the projectreferences API

func (*ProjectReference) DeepCopy

func (in *ProjectReference) DeepCopy() *ProjectReference

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

func (*ProjectReference) DeepCopyInto

func (in *ProjectReference) DeepCopyInto(out *ProjectReference)

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

func (*ProjectReference) DeepCopyObject

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

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

type ProjectReferenceList

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

ProjectReferenceList contains a list of ProjectReference

func (*ProjectReferenceList) DeepCopy

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

func (*ProjectReferenceList) DeepCopyInto

func (in *ProjectReferenceList) DeepCopyInto(out *ProjectReferenceList)

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

func (*ProjectReferenceList) DeepCopyObject

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

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

type ProjectReferenceSpec

type ProjectReferenceSpec struct {
	GCPProjectID       string         `json:"gcpProjectID,omitempty"`
	ProjectClaimCRLink NamespacedName `json:"projectClaimCRLink"`
	LegalEntity        LegalEntity    `json:"legalEntity"`
	CCS                bool           `json:"ccs,omitempty"`
	CCSSecretRef       NamespacedName `json:"ccsSecretRef,omitempty"`
	ServiceAccountName string         `json:"serviceAccountName,omitempty"`
	SharedVPCAccess    bool           `json:"sharedVPCAccess,omitempty"`
}

ProjectReferenceSpec defines the desired state of ProjectReference +k8s:openapi-gen=true

func (*ProjectReferenceSpec) DeepCopy

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

func (*ProjectReferenceSpec) DeepCopyInto

func (in *ProjectReferenceSpec) DeepCopyInto(out *ProjectReferenceSpec)

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

type ProjectReferenceState

type ProjectReferenceState string

ProjectReferenceState is a valid value from ProjectReference.Status

const (
	// ProjectReferenceStatusCreating creating status for a ProjectReference CR
	ProjectReferenceStatusCreating ProjectReferenceState = "Creating"
	// ProjectReferenceStatusReady ready status for a ProjectReference CR
	ProjectReferenceStatusReady ProjectReferenceState = "Ready"
	// ProjectReferenceStatusError error status for a ProjectReference CR
	ProjectReferenceStatusError ProjectReferenceState = "Error"
	// ProjectReferenceStatusVerification pending verification status for a ProjectReference CR
	ProjectReferenceStatusVerification ProjectReferenceState = "Verification"
)

type ProjectReferenceStatus

type ProjectReferenceStatus struct {
	// +listType=atomic
	Conditions []Condition           `json:"conditions"`
	State      ProjectReferenceState `json:"state"`
}

ProjectReferenceStatus defines the observed state of ProjectReference +k8s:openapi-gen=true

func (*ProjectReferenceStatus) DeepCopy

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

func (*ProjectReferenceStatus) DeepCopyInto

func (in *ProjectReferenceStatus) DeepCopyInto(out *ProjectReferenceStatus)

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