v1alpha1

package
v1.128.0 Latest Latest
Warning

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

Go to latest
Published: Jan 31, 2025 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Overview

+kcc:proto=google.cloud.kms.v1

+kubebuilder:object:generate=true +groupName=kms.cnrm.cloud.google.com

Index

Constants

This section is empty.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects
	GroupVersion = schema.GroupVersion{Group: "kms.cnrm.cloud.google.com", 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 KMSAutokeyConfigGVK = GroupVersion.WithKind("KMSAutokeyConfig")
View Source
var KMSKeyHandleGVK = GroupVersion.WithKind("KMSKeyHandle")

Functions

func AsKMSAutokeyConfigExternal

func AsKMSAutokeyConfigExternal(parent *KMSAutokeyConfigParent) (external string)

func AsKMSKeyHandleExternal

func AsKMSKeyHandleExternal(parent *KMSKeyHandleParent, resourceID string) (external string)

Types

type AutokeyConfig

type AutokeyConfig struct {
	// Identifier. Name of the [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig]
	//  resource, e.g. `folders/{FOLDER_NUMBER}/autokeyConfig`.
	Name *string `json:"name,omitempty"`

	// Optional. Name of the key project, e.g. `projects/{PROJECT_ID}` or
	//  `projects/{PROJECT_NUMBER}`, where Cloud KMS Autokey will provision a new
	//  [CryptoKey][google.cloud.kms.v1.CryptoKey] when a
	//  [KeyHandle][google.cloud.kms.v1.KeyHandle] is created. On
	//  [UpdateAutokeyConfig][google.cloud.kms.v1.AutokeyAdmin.UpdateAutokeyConfig],
	//  the caller will require `cloudkms.cryptoKeys.setIamPolicy` permission on
	//  this key project. Once configured, for Cloud KMS Autokey to function
	//  properly, this key project must have the Cloud KMS API activated and the
	//  Cloud KMS Service Agent for this key project must be granted the
	//  `cloudkms.admin` role (or pertinent permissions). A request with an empty
	//  key project field will clear the configuration.
	KeyProject *refs.ProjectRef `json:"keyProject,omitempty"`

	// Output only. The state for the AutokeyConfig.
	State *string `json:"state,omitempty"`
}

+kcc:proto=google.cloud.kms.v1.AutokeyConfig

func (*AutokeyConfig) DeepCopy

func (in *AutokeyConfig) DeepCopy() *AutokeyConfig

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

func (*AutokeyConfig) DeepCopyInto

func (in *AutokeyConfig) DeepCopyInto(out *AutokeyConfig)

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

type KMSAutokeyConfig

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

	Spec   KMSAutokeyConfigSpec   `json:"spec,omitempty"`
	Status KMSAutokeyConfigStatus `json:"status,omitempty"`
}

KMSAutokeyConfig is the Schema for the KMSAutokeyConfig API +k8s:openapi-gen=true

func (*KMSAutokeyConfig) DeepCopy

func (in *KMSAutokeyConfig) DeepCopy() *KMSAutokeyConfig

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

func (*KMSAutokeyConfig) DeepCopyInto

func (in *KMSAutokeyConfig) DeepCopyInto(out *KMSAutokeyConfig)

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

func (*KMSAutokeyConfig) DeepCopyObject

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

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

type KMSAutokeyConfigList

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object KMSAutokeyConfigList contains a list of KMSAutokeyConfig

func (*KMSAutokeyConfigList) DeepCopy

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

func (*KMSAutokeyConfigList) DeepCopyInto

func (in *KMSAutokeyConfigList) DeepCopyInto(out *KMSAutokeyConfigList)

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

func (*KMSAutokeyConfigList) DeepCopyObject

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

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

type KMSAutokeyConfigObservedState

type KMSAutokeyConfigObservedState struct {
	// Output only. Current state of this AutokeyConfig.
	// +optional
	State *string `json:"state,omitempty"`
}

KMSAutokeyConfigSpec defines the desired state of KMSAutokeyConfig +kcc:proto=google.cloud.kms.v1.AutokeyConfig

func (*KMSAutokeyConfigObservedState) DeepCopy

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

func (*KMSAutokeyConfigObservedState) DeepCopyInto

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

type KMSAutokeyConfigParent

type KMSAutokeyConfigParent struct {
	FolderID string
}

func ParseKMSAutokeyConfigExternal

func ParseKMSAutokeyConfigExternal(external string) (parent *KMSAutokeyConfigParent, err error)

func (*KMSAutokeyConfigParent) DeepCopy

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

func (*KMSAutokeyConfigParent) DeepCopyInto

func (in *KMSAutokeyConfigParent) DeepCopyInto(out *KMSAutokeyConfigParent)

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

func (*KMSAutokeyConfigParent) String

func (p *KMSAutokeyConfigParent) String() string

type KMSAutokeyConfigRef

type KMSAutokeyConfigRef struct {
	// A reference to an externally managed KMSAutokeyConfig resource.
	// Should be in the format "folders/{{folderID}}/autokeyConfig".
	External string `json:"external,omitempty"`

	// The name of a KMSAutokeyConfig resource.
	Name string `json:"name,omitempty"`

	// The namespace of a KMSAutokeyConfig resource.
	Namespace string `json:"namespace,omitempty"`
	// contains filtered or unexported fields
}

KMSAutokeyConfigRef defines the resource reference to KMSAutokeyConfig, which "External" field holds the GCP identifier for the KRM object.

func NewKMSAutokeyConfigRef

func NewKMSAutokeyConfigRef(ctx context.Context, reader client.Reader, obj *KMSAutokeyConfig) (*KMSAutokeyConfigRef, error)

New builds a KMSAutokeyConfigRef from the Config Connector KMSAutokeyConfig object.

func (*KMSAutokeyConfigRef) DeepCopy

func (in *KMSAutokeyConfigRef) DeepCopy() *KMSAutokeyConfigRef

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

func (*KMSAutokeyConfigRef) DeepCopyInto

func (in *KMSAutokeyConfigRef) DeepCopyInto(out *KMSAutokeyConfigRef)

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

func (*KMSAutokeyConfigRef) NormalizedExternal

func (r *KMSAutokeyConfigRef) NormalizedExternal(ctx context.Context, reader client.Reader, otherNamespace string) (string, error)

NormalizedExternal provision the "External" value for other resource that depends on KMSAutokeyConfig. If the "External" is given in the other resource's spec.KMSAutokeyConfigRef, the given value will be used. Otherwise, the "Name" and "Namespace" will be used to query the actual KMSAutokeyConfig object from the cluster.

func (*KMSAutokeyConfigRef) Parent

type KMSAutokeyConfigSpec

type KMSAutokeyConfigSpec struct {

	// Immutable. The folder that this resource belongs to.
	// +required
	FolderRef *refs.FolderRef `json:"folderRef"`

	// +optional
	KeyProjectRef *refs.ProjectRef `json:"keyProject,omitempty"`
}

KMSAutokeyConfigSpec defines the desired state of KMSAutokeyConfig +kcc:proto=google.cloud.kms.v1.AutokeyConfig

func (*KMSAutokeyConfigSpec) DeepCopy

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

func (*KMSAutokeyConfigSpec) DeepCopyInto

func (in *KMSAutokeyConfigSpec) DeepCopyInto(out *KMSAutokeyConfigSpec)

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

type KMSAutokeyConfigStatus

type KMSAutokeyConfigStatus struct {
	/* Conditions represent the latest available observations of the
	   object's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`

	// ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`

	// A unique specifier for the KMSAutokeyConfig resource in GCP.
	ExternalRef *string `json:"externalRef,omitempty"`

	// ObservedState is the state of the resource as most recently observed in GCP.
	ObservedState *KMSAutokeyConfigObservedState `json:"observedState,omitempty"`
}

KMSAutokeyConfigStatus defines the config connector machine state of KMSAutokeyConfig

func (*KMSAutokeyConfigStatus) DeepCopy

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

func (*KMSAutokeyConfigStatus) DeepCopyInto

func (in *KMSAutokeyConfigStatus) DeepCopyInto(out *KMSAutokeyConfigStatus)

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

type KMSKeyHandle

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

	// +required
	Spec   KMSKeyHandleSpec   `json:"spec,omitempty"`
	Status KMSKeyHandleStatus `json:"status,omitempty"`
}

KMSKeyHandle is the Schema for the KMSKeyHandle API +k8s:openapi-gen=true

func (*KMSKeyHandle) DeepCopy

func (in *KMSKeyHandle) DeepCopy() *KMSKeyHandle

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

func (*KMSKeyHandle) DeepCopyInto

func (in *KMSKeyHandle) DeepCopyInto(out *KMSKeyHandle)

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

func (*KMSKeyHandle) DeepCopyObject

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

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

type KMSKeyHandleList

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

+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object KMSKeyHandleList contains a list of KMSKeyHandle

func (*KMSKeyHandleList) DeepCopy

func (in *KMSKeyHandleList) DeepCopy() *KMSKeyHandleList

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

func (*KMSKeyHandleList) DeepCopyInto

func (in *KMSKeyHandleList) DeepCopyInto(out *KMSKeyHandleList)

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

func (*KMSKeyHandleList) DeepCopyObject

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

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

type KMSKeyHandleObservedState

type KMSKeyHandleObservedState struct {
	KMSKey *string `json:"kmsKey,omitempty"`
}

KMSKeyHandleObservedState is the state of the KMSKeyHandle resource as most recently observed in GCP.

func (*KMSKeyHandleObservedState) DeepCopy

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

func (*KMSKeyHandleObservedState) DeepCopyInto

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

type KMSKeyHandleParent

type KMSKeyHandleParent struct {
	ProjectID string
	Location  string
}

func AsKMSKeyHandleExternal_FromSpec

func AsKMSKeyHandleExternal_FromSpec(spec *KMSKeyHandleSpec) (parent *KMSKeyHandleParent, resourceID string, err error)

func ParseKMSKeyHandleExternal

func ParseKMSKeyHandleExternal(external string) (parent *KMSKeyHandleParent, resourceID string, err error)

func (*KMSKeyHandleParent) DeepCopy

func (in *KMSKeyHandleParent) DeepCopy() *KMSKeyHandleParent

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

func (*KMSKeyHandleParent) DeepCopyInto

func (in *KMSKeyHandleParent) DeepCopyInto(out *KMSKeyHandleParent)

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

func (*KMSKeyHandleParent) String

func (p *KMSKeyHandleParent) String() string

type KMSKeyHandleRef

type KMSKeyHandleRef struct {
	// A reference to an externally managed KMSKeyHandle resource.
	// Should be in the format "projects/{{projectID}}/locations/{{location}}/keyHandles/{{keyhandleID}}".
	External string `json:"external,omitempty"`

	// The name of a KMSKeyHandle resource.
	Name string `json:"name,omitempty"`

	// The namespace of a KMSKeyHandle resource.
	Namespace string `json:"namespace,omitempty"`
	// contains filtered or unexported fields
}

KMSKeyHandleRef defines the resource reference to KMSKeyHandle, which "External" field holds the GCP identifier for the KRM object.

func NewKMSKeyHandleRef

func NewKMSKeyHandleRef(ctx context.Context, reader client.Reader, obj *KMSKeyHandle) (*KMSKeyHandleRef, error)

New builds a KMSKeyHandleRef from the Config Connector KMSKeyHandle object.

func (*KMSKeyHandleRef) DeepCopy

func (in *KMSKeyHandleRef) DeepCopy() *KMSKeyHandleRef

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

func (*KMSKeyHandleRef) DeepCopyInto

func (in *KMSKeyHandleRef) DeepCopyInto(out *KMSKeyHandleRef)

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

func (*KMSKeyHandleRef) KeyHandleID added in v1.126.0

func (r *KMSKeyHandleRef) KeyHandleID() (string, bool, error)

func (*KMSKeyHandleRef) NormalizedExternal

func (r *KMSKeyHandleRef) NormalizedExternal(ctx context.Context, reader client.Reader, otherNamespace string) (string, error)

NormalizedExternal provision the "External" value for other resource that depends on KMSKeyHandle. If the "External" is given in the other resource's spec.KMSKeyHandleRef, the given value will be used. Otherwise, the "Name" and "Namespace" will be used to query the actual KMSKeyHandle object from the cluster.

func (*KMSKeyHandleRef) Parent

func (r *KMSKeyHandleRef) Parent() (*KMSKeyHandleParent, error)

type KMSKeyHandleSpec

type KMSKeyHandleSpec struct {
	// The KMS Key Handle ID used for resource creation or acquisition.
	// For creation: If specified, this value is used as the key handle ID. If not provided, a UUID will be generated and assigned as the key handle ID.
	// For acquisition: This field must be provided to identify the key handle resource to acquire.
	ResourceID *string `json:"resourceID,omitempty"`

	// Project hosting KMSKeyHandle
	ProjectRef *refs.ProjectRef `json:"projectRef,omitempty"`

	// Location name to create KeyHandle
	Location *string `json:"location,omitempty"`

	// Indicates the resource type that the resulting [CryptoKey][] is meant to
	// protect, e.g. `{SERVICE}.googleapis.com/{TYPE}`. See documentation for
	// supported resource types https://cloud.google.com/kms/docs/autokey-overview#compatible-services.
	ResourceTypeSelector *string `json:"resourceTypeSelector,omitempty"`
}

KMSKeyHandleSpec defines the desired state of KMSKeyHandle +kcc:proto=google.cloud.kms.v1.KeyHandle

func (*KMSKeyHandleSpec) DeepCopy

func (in *KMSKeyHandleSpec) DeepCopy() *KMSKeyHandleSpec

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

func (*KMSKeyHandleSpec) DeepCopyInto

func (in *KMSKeyHandleSpec) DeepCopyInto(out *KMSKeyHandleSpec)

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

type KMSKeyHandleStatus

type KMSKeyHandleStatus struct {
	/* Conditions represent the latest available observations of the
	   object's current state. */
	Conditions []v1alpha1.Condition `json:"conditions,omitempty"`

	// ObservedGeneration is the generation of the resource that was most recently observed by the Config Connector controller. If this is equal to metadata.generation, then that means that the current reported status reflects the most recent desired state of the resource.
	ObservedGeneration *int64 `json:"observedGeneration,omitempty"`

	// A unique specifier for the KMSKeyHandle resource in GCP.
	ExternalRef *string `json:"externalRef,omitempty"`

	// ObservedState is the state of the resource as most recently observed in GCP.
	ObservedState *KMSKeyHandleObservedState `json:"observedState,omitempty"`
}

KMSKeyHandleStatus defines the config connector machine state of KMSKeyHandle

func (*KMSKeyHandleStatus) DeepCopy

func (in *KMSKeyHandleStatus) DeepCopy() *KMSKeyHandleStatus

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

func (*KMSKeyHandleStatus) DeepCopyInto

func (in *KMSKeyHandleStatus) DeepCopyInto(out *KMSKeyHandleStatus)

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

type KeyHandle

type KeyHandle struct {
	// Identifier. Name of the [KeyHandle][google.cloud.kms.v1.KeyHandle]
	//  resource, e.g.
	//  `projects/{PROJECT_ID}/locations/{LOCATION}/keyHandles/{KEY_HANDLE_ID}`.
	Name *string `json:"name,omitempty"`

	// Output only. Name of a [CryptoKey][google.cloud.kms.v1.CryptoKey] that has
	//  been provisioned for Customer Managed Encryption Key (CMEK) use in the
	//  [KeyHandle][google.cloud.kms.v1.KeyHandle] project and location for the
	//  requested resource type. The [CryptoKey][google.cloud.kms.v1.CryptoKey]
	//  project will reflect the value configured in the
	//  [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig] on the resource
	//  project's ancestor folder at the time of the
	//  [KeyHandle][google.cloud.kms.v1.KeyHandle] creation. If more than one
	//  ancestor folder has a configured
	//  [AutokeyConfig][google.cloud.kms.v1.AutokeyConfig], the nearest of these
	//  configurations is used.
	KmsKey *string `json:"kmsKey,omitempty"`

	// Required. Indicates the resource type that the resulting
	//  [CryptoKey][google.cloud.kms.v1.CryptoKey] is meant to protect, e.g.
	//  `{SERVICE}.googleapis.com/{TYPE}`. See documentation for supported resource
	//  types.
	ResourceTypeSelector *string `json:"resourceTypeSelector,omitempty"`
}

+kcc:proto=google.cloud.kms.v1.KeyHandle

func (*KeyHandle) DeepCopy

func (in *KeyHandle) DeepCopy() *KeyHandle

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

func (*KeyHandle) DeepCopyInto

func (in *KeyHandle) DeepCopyInto(out *KeyHandle)

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