-
Notifications
You must be signed in to change notification settings - Fork 204
/
secretmanagersecretversion_types.go
140 lines (116 loc) · 5.93 KB
/
secretmanagersecretversion_types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
// Copyright 2020 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// ----------------------------------------------------------------------------
//
// *** AUTO GENERATED CODE *** AUTO GENERATED CODE ***
//
// ----------------------------------------------------------------------------
//
// This file is automatically generated by Config Connector and manual
// changes will be clobbered when the file is regenerated.
//
// ----------------------------------------------------------------------------
// *** DISCLAIMER ***
// Config Connector's go-client for CRDs is currently in ALPHA, which means
// that future versions of the go-client may include breaking changes.
// Please try it out and give us feedback!
package v1beta1
import (
"github.com/GoogleCloudPlatform/k8s-config-connector/pkg/clients/generated/apis/k8s/v1alpha1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
type SecretversionSecretData struct {
/* Value of the field. Cannot be used if 'valueFrom' is specified. */
// +optional
Value *string `json:"value,omitempty"`
/* Source for the field's value. Cannot be used if 'value' is specified. */
// +optional
ValueFrom *SecretversionValueFrom `json:"valueFrom,omitempty"`
}
type SecretversionValueFrom struct {
/* Reference to a value with the given key in the given Secret in the resource's namespace. */
// +optional
SecretKeyRef *v1alpha1.SecretKeyRef `json:"secretKeyRef,omitempty"`
}
type SecretManagerSecretVersionSpec struct {
/* The deletion policy for the secret version. Setting 'ABANDON' allows the resource
to be abandoned rather than deleted. Setting 'DISABLE' allows the resource to be
disabled rather than deleted. Default is 'DELETE'. Possible values are:
* DELETE
* DISABLE
* ABANDON. */
// +optional
DeletionPolicy *string `json:"deletionPolicy,omitempty"`
/* The current state of the SecretVersion. */
// +optional
Enabled *bool `json:"enabled,omitempty"`
/* Immutable. If set to 'true', the secret data is expected to be base64-encoded string and would be sent as is. */
// +optional
IsSecretDataBase64 *bool `json:"isSecretDataBase64,omitempty"`
/* Immutable. Optional. The service-generated name of the resource. Used for acquisition only. Leave unset to create a new resource. */
// +optional
ResourceID *string `json:"resourceID,omitempty"`
/* Immutable. The secret data. Must be no larger than 64KiB. */
SecretData SecretversionSecretData `json:"secretData"`
/* Secret Manager secret resource */
SecretRef v1alpha1.ResourceRef `json:"secretRef"`
}
type SecretManagerSecretVersionStatus struct {
/* Conditions represent the latest available observations of the
SecretManagerSecretVersion's current state. */
Conditions []v1alpha1.Condition `json:"conditions,omitempty"`
/* The time at which the Secret was created. */
// +optional
CreateTime *string `json:"createTime,omitempty"`
/* The time at which the Secret was destroyed. Only present if state is DESTROYED. */
// +optional
DestroyTime *string `json:"destroyTime,omitempty"`
/* The resource name of the SecretVersion. Format:
'projects/{{project}}/secrets/{{secret_id}}/versions/{{version}}'. */
// +optional
Name *string `json:"name,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. */
// +optional
ObservedGeneration *int64 `json:"observedGeneration,omitempty"`
/* The version of the Secret. */
// +optional
Version *string `json:"version,omitempty"`
}
// +genclient
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// +kubebuilder:resource:categories=gcp,shortName=gcpsecretmanagersecretversion;gcpsecretmanagersecretversions
// +kubebuilder:subresource:status
// +kubebuilder:metadata:labels="cnrm.cloud.google.com/managed-by-kcc=true";"cnrm.cloud.google.com/stability-level=stable";"cnrm.cloud.google.com/system=true";"cnrm.cloud.google.com/tf2crd=true"
// +kubebuilder:printcolumn:name="Age",JSONPath=".metadata.creationTimestamp",type="date"
// +kubebuilder:printcolumn:name="Ready",JSONPath=".status.conditions[?(@.type=='Ready')].status",type="string",description="When 'True', the most recent reconcile of the resource succeeded"
// +kubebuilder:printcolumn:name="Status",JSONPath=".status.conditions[?(@.type=='Ready')].reason",type="string",description="The reason for the value in 'Ready'"
// +kubebuilder:printcolumn:name="Status Age",JSONPath=".status.conditions[?(@.type=='Ready')].lastTransitionTime",type="date",description="The last transition time for the value in 'Status'"
// SecretManagerSecretVersion is the Schema for the secretmanager API
// +k8s:openapi-gen=true
type SecretManagerSecretVersion struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
Spec SecretManagerSecretVersionSpec `json:"spec,omitempty"`
Status SecretManagerSecretVersionStatus `json:"status,omitempty"`
}
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
// SecretManagerSecretVersionList contains a list of SecretManagerSecretVersion
type SecretManagerSecretVersionList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []SecretManagerSecretVersion `json:"items"`
}
func init() {
SchemeBuilder.Register(&SecretManagerSecretVersion{}, &SecretManagerSecretVersionList{})
}