generated from crossplane/upjet-provider-template
/
zz_secretbackendrole_types.go
executable file
·454 lines (348 loc) · 23.5 KB
/
zz_secretbackendrole_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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
/*
Copyright 2022 Upbound Inc.
*/
// Code generated by upjet. DO NOT EDIT.
package v1alpha1
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
v1 "github.com/crossplane/crossplane-runtime/apis/common/v1"
)
type AllowedUserKeyConfigInitParameters struct {
// A list of allowed key lengths as integers.
// For key types that do not support setting the length a value of [0] should be used.
// Setting multiple lengths is only supported on Vault 1.10+. For prior releases length
// must be set to a single element list.
// List of allowed key lengths, vault-1.10 and above
Lengths []*float64 `json:"lengths,omitempty" tf:"lengths,omitempty"`
// The SSH public key type.
// Supported key types are:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519,
// ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
// Key type, choices:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
Type *string `json:"type,omitempty" tf:"type,omitempty"`
}
type AllowedUserKeyConfigObservation struct {
// A list of allowed key lengths as integers.
// For key types that do not support setting the length a value of [0] should be used.
// Setting multiple lengths is only supported on Vault 1.10+. For prior releases length
// must be set to a single element list.
// List of allowed key lengths, vault-1.10 and above
Lengths []*float64 `json:"lengths,omitempty" tf:"lengths,omitempty"`
// The SSH public key type.
// Supported key types are:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519,
// ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
// Key type, choices:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
Type *string `json:"type,omitempty" tf:"type,omitempty"`
}
type AllowedUserKeyConfigParameters struct {
// A list of allowed key lengths as integers.
// For key types that do not support setting the length a value of [0] should be used.
// Setting multiple lengths is only supported on Vault 1.10+. For prior releases length
// must be set to a single element list.
// List of allowed key lengths, vault-1.10 and above
// +kubebuilder:validation:Optional
Lengths []*float64 `json:"lengths,omitempty" tf:"lengths,omitempty"`
// The SSH public key type.
// Supported key types are:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519,
// ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
// Key type, choices:
// rsa, ecdsa, ec, dsa, ed25519, ssh-rsa, ssh-dss, ssh-ed25519, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, ecdsa-sha2-nistp521
// +kubebuilder:validation:Optional
Type *string `json:"type,omitempty" tf:"type,omitempty"`
}
type SecretBackendRoleInitParameters struct {
// When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.
AlgorithmSigner *string `json:"algorithmSigner,omitempty" tf:"algorithm_signer,omitempty"`
// Specifies if host certificates that are requested are allowed to use the base domains listed in allowed_domains.
AllowBareDomains *bool `json:"allowBareDomains,omitempty" tf:"allow_bare_domains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'host'.
AllowHostCertificates *bool `json:"allowHostCertificates,omitempty" tf:"allow_host_certificates,omitempty"`
// Specifies if host certificates that are requested are allowed to be subdomains of those listed in allowed_domains.
AllowSubdomains *bool `json:"allowSubdomains,omitempty" tf:"allow_subdomains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'user'.
AllowUserCertificates *bool `json:"allowUserCertificates,omitempty" tf:"allow_user_certificates,omitempty"`
// Specifies if users can override the key ID for a signed certificate with the key_id field.
AllowUserKeyIds *bool `json:"allowUserKeyIds,omitempty" tf:"allow_user_key_ids,omitempty"`
// Specifies a comma-separated list of critical options that certificates can have when signed.
AllowedCriticalOptions *string `json:"allowedCriticalOptions,omitempty" tf:"allowed_critical_options,omitempty"`
// The list of domains for which a client can request a host certificate.
AllowedDomains *string `json:"allowedDomains,omitempty" tf:"allowed_domains,omitempty"`
// Specifies if allowed_domains can be declared using
// identity template policies. Non-templated domains are also permitted.
AllowedDomainsTemplate *bool `json:"allowedDomainsTemplate,omitempty" tf:"allowed_domains_template,omitempty"`
// Specifies a comma-separated list of extensions that certificates can have when signed.
AllowedExtensions *string `json:"allowedExtensions,omitempty" tf:"allowed_extensions,omitempty"`
// Set of configuration blocks to define allowed
// user key configuration, like key type and their lengths. Can be specified multiple times.
// See
// Set of allowed public key types and their relevant configuration
AllowedUserKeyConfig []AllowedUserKeyConfigInitParameters `json:"allowedUserKeyConfig,omitempty" tf:"allowed_user_key_config,omitempty"`
// Specifies a map of ssh key types and their expected sizes which
// are allowed to be signed by the CA type.
// Deprecated: use allowed_user_key_config instead
AllowedUserKeyLengths map[string]*float64 `json:"allowedUserKeyLengths,omitempty" tf:"allowed_user_key_lengths,omitempty"`
// Specifies a comma-separated list of usernames that are to be allowed, only if certain usernames are to be allowed.
AllowedUsers *string `json:"allowedUsers,omitempty" tf:"allowed_users,omitempty"`
// Specifies if allowed_users can be declared using identity template policies. Non-templated users are also permitted.
AllowedUsersTemplate *bool `json:"allowedUsersTemplate,omitempty" tf:"allowed_users_template,omitempty"`
// The path where the SSH secret backend is mounted.
Backend *string `json:"backend,omitempty" tf:"backend,omitempty"`
// The comma-separated string of CIDR blocks for which this role is applicable.
CidrList *string `json:"cidrList,omitempty" tf:"cidr_list,omitempty"`
// Specifies a map of critical options that certificates have when signed.
DefaultCriticalOptions map[string]*string `json:"defaultCriticalOptions,omitempty" tf:"default_critical_options,omitempty"`
// Specifies a map of extensions that certificates have when signed.
DefaultExtensions map[string]*string `json:"defaultExtensions,omitempty" tf:"default_extensions,omitempty"`
// Specifies the default username for which a credential will be generated.
DefaultUser *string `json:"defaultUser,omitempty" tf:"default_user,omitempty"`
// If set, default_users can be specified using identity template values. A non-templated user is also permitted.
DefaultUserTemplate *bool `json:"defaultUserTemplate,omitempty" tf:"default_user_template,omitempty"`
// Specifies a custom format for the key id of a signed certificate.
KeyIDFormat *string `json:"keyIdFormat,omitempty" tf:"key_id_format,omitempty"`
// Specifies the type of credentials generated by this role. This can be either otp, dynamic or ca.
KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
// Specifies the maximum Time To Live value.
MaxTTL *string `json:"maxTtl,omitempty" tf:"max_ttl,omitempty"`
// Specifies the name of the role to create.
// Unique name for the role.
Name *string `json:"name,omitempty" tf:"name,omitempty"`
// The namespace to provision the resource in.
// The value should not contain leading or trailing forward slashes.
// The namespace is always relative to the provider's configured namespace.
// Available only for Vault Enterprise.
// Target namespace. (requires Enterprise)
Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
// Specifies the duration by which to backdate the ValidAfter property.
// Uses duration format strings.
// Specifies the duration by which to backdate the ValidAfter property. Uses duration format strings.
NotBeforeDuration *string `json:"notBeforeDuration,omitempty" tf:"not_before_duration,omitempty"`
// Specifies the Time To Live value.
TTL *string `json:"ttl,omitempty" tf:"ttl,omitempty"`
}
type SecretBackendRoleObservation struct {
// When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.
AlgorithmSigner *string `json:"algorithmSigner,omitempty" tf:"algorithm_signer,omitempty"`
// Specifies if host certificates that are requested are allowed to use the base domains listed in allowed_domains.
AllowBareDomains *bool `json:"allowBareDomains,omitempty" tf:"allow_bare_domains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'host'.
AllowHostCertificates *bool `json:"allowHostCertificates,omitempty" tf:"allow_host_certificates,omitempty"`
// Specifies if host certificates that are requested are allowed to be subdomains of those listed in allowed_domains.
AllowSubdomains *bool `json:"allowSubdomains,omitempty" tf:"allow_subdomains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'user'.
AllowUserCertificates *bool `json:"allowUserCertificates,omitempty" tf:"allow_user_certificates,omitempty"`
// Specifies if users can override the key ID for a signed certificate with the key_id field.
AllowUserKeyIds *bool `json:"allowUserKeyIds,omitempty" tf:"allow_user_key_ids,omitempty"`
// Specifies a comma-separated list of critical options that certificates can have when signed.
AllowedCriticalOptions *string `json:"allowedCriticalOptions,omitempty" tf:"allowed_critical_options,omitempty"`
// The list of domains for which a client can request a host certificate.
AllowedDomains *string `json:"allowedDomains,omitempty" tf:"allowed_domains,omitempty"`
// Specifies if allowed_domains can be declared using
// identity template policies. Non-templated domains are also permitted.
AllowedDomainsTemplate *bool `json:"allowedDomainsTemplate,omitempty" tf:"allowed_domains_template,omitempty"`
// Specifies a comma-separated list of extensions that certificates can have when signed.
AllowedExtensions *string `json:"allowedExtensions,omitempty" tf:"allowed_extensions,omitempty"`
// Set of configuration blocks to define allowed
// user key configuration, like key type and their lengths. Can be specified multiple times.
// See
// Set of allowed public key types and their relevant configuration
AllowedUserKeyConfig []AllowedUserKeyConfigObservation `json:"allowedUserKeyConfig,omitempty" tf:"allowed_user_key_config,omitempty"`
// Specifies a map of ssh key types and their expected sizes which
// are allowed to be signed by the CA type.
// Deprecated: use allowed_user_key_config instead
AllowedUserKeyLengths map[string]*float64 `json:"allowedUserKeyLengths,omitempty" tf:"allowed_user_key_lengths,omitempty"`
// Specifies a comma-separated list of usernames that are to be allowed, only if certain usernames are to be allowed.
AllowedUsers *string `json:"allowedUsers,omitempty" tf:"allowed_users,omitempty"`
// Specifies if allowed_users can be declared using identity template policies. Non-templated users are also permitted.
AllowedUsersTemplate *bool `json:"allowedUsersTemplate,omitempty" tf:"allowed_users_template,omitempty"`
// The path where the SSH secret backend is mounted.
Backend *string `json:"backend,omitempty" tf:"backend,omitempty"`
// The comma-separated string of CIDR blocks for which this role is applicable.
CidrList *string `json:"cidrList,omitempty" tf:"cidr_list,omitempty"`
// Specifies a map of critical options that certificates have when signed.
DefaultCriticalOptions map[string]*string `json:"defaultCriticalOptions,omitempty" tf:"default_critical_options,omitempty"`
// Specifies a map of extensions that certificates have when signed.
DefaultExtensions map[string]*string `json:"defaultExtensions,omitempty" tf:"default_extensions,omitempty"`
// Specifies the default username for which a credential will be generated.
DefaultUser *string `json:"defaultUser,omitempty" tf:"default_user,omitempty"`
// If set, default_users can be specified using identity template values. A non-templated user is also permitted.
DefaultUserTemplate *bool `json:"defaultUserTemplate,omitempty" tf:"default_user_template,omitempty"`
ID *string `json:"id,omitempty" tf:"id,omitempty"`
// Specifies a custom format for the key id of a signed certificate.
KeyIDFormat *string `json:"keyIdFormat,omitempty" tf:"key_id_format,omitempty"`
// Specifies the type of credentials generated by this role. This can be either otp, dynamic or ca.
KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
// Specifies the maximum Time To Live value.
MaxTTL *string `json:"maxTtl,omitempty" tf:"max_ttl,omitempty"`
// Specifies the name of the role to create.
// Unique name for the role.
Name *string `json:"name,omitempty" tf:"name,omitempty"`
// The namespace to provision the resource in.
// The value should not contain leading or trailing forward slashes.
// The namespace is always relative to the provider's configured namespace.
// Available only for Vault Enterprise.
// Target namespace. (requires Enterprise)
Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
// Specifies the duration by which to backdate the ValidAfter property.
// Uses duration format strings.
// Specifies the duration by which to backdate the ValidAfter property. Uses duration format strings.
NotBeforeDuration *string `json:"notBeforeDuration,omitempty" tf:"not_before_duration,omitempty"`
// Specifies the Time To Live value.
TTL *string `json:"ttl,omitempty" tf:"ttl,omitempty"`
}
type SecretBackendRoleParameters struct {
// When supplied, this value specifies a signing algorithm for the key. Possible values: ssh-rsa, rsa-sha2-256, rsa-sha2-512.
// +kubebuilder:validation:Optional
AlgorithmSigner *string `json:"algorithmSigner,omitempty" tf:"algorithm_signer,omitempty"`
// Specifies if host certificates that are requested are allowed to use the base domains listed in allowed_domains.
// +kubebuilder:validation:Optional
AllowBareDomains *bool `json:"allowBareDomains,omitempty" tf:"allow_bare_domains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'host'.
// +kubebuilder:validation:Optional
AllowHostCertificates *bool `json:"allowHostCertificates,omitempty" tf:"allow_host_certificates,omitempty"`
// Specifies if host certificates that are requested are allowed to be subdomains of those listed in allowed_domains.
// +kubebuilder:validation:Optional
AllowSubdomains *bool `json:"allowSubdomains,omitempty" tf:"allow_subdomains,omitempty"`
// Specifies if certificates are allowed to be signed for use as a 'user'.
// +kubebuilder:validation:Optional
AllowUserCertificates *bool `json:"allowUserCertificates,omitempty" tf:"allow_user_certificates,omitempty"`
// Specifies if users can override the key ID for a signed certificate with the key_id field.
// +kubebuilder:validation:Optional
AllowUserKeyIds *bool `json:"allowUserKeyIds,omitempty" tf:"allow_user_key_ids,omitempty"`
// Specifies a comma-separated list of critical options that certificates can have when signed.
// +kubebuilder:validation:Optional
AllowedCriticalOptions *string `json:"allowedCriticalOptions,omitempty" tf:"allowed_critical_options,omitempty"`
// The list of domains for which a client can request a host certificate.
// +kubebuilder:validation:Optional
AllowedDomains *string `json:"allowedDomains,omitempty" tf:"allowed_domains,omitempty"`
// Specifies if allowed_domains can be declared using
// identity template policies. Non-templated domains are also permitted.
// +kubebuilder:validation:Optional
AllowedDomainsTemplate *bool `json:"allowedDomainsTemplate,omitempty" tf:"allowed_domains_template,omitempty"`
// Specifies a comma-separated list of extensions that certificates can have when signed.
// +kubebuilder:validation:Optional
AllowedExtensions *string `json:"allowedExtensions,omitempty" tf:"allowed_extensions,omitempty"`
// Set of configuration blocks to define allowed
// user key configuration, like key type and their lengths. Can be specified multiple times.
// See
// Set of allowed public key types and their relevant configuration
// +kubebuilder:validation:Optional
AllowedUserKeyConfig []AllowedUserKeyConfigParameters `json:"allowedUserKeyConfig,omitempty" tf:"allowed_user_key_config,omitempty"`
// Specifies a map of ssh key types and their expected sizes which
// are allowed to be signed by the CA type.
// Deprecated: use allowed_user_key_config instead
// +kubebuilder:validation:Optional
AllowedUserKeyLengths map[string]*float64 `json:"allowedUserKeyLengths,omitempty" tf:"allowed_user_key_lengths,omitempty"`
// Specifies a comma-separated list of usernames that are to be allowed, only if certain usernames are to be allowed.
// +kubebuilder:validation:Optional
AllowedUsers *string `json:"allowedUsers,omitempty" tf:"allowed_users,omitempty"`
// Specifies if allowed_users can be declared using identity template policies. Non-templated users are also permitted.
// +kubebuilder:validation:Optional
AllowedUsersTemplate *bool `json:"allowedUsersTemplate,omitempty" tf:"allowed_users_template,omitempty"`
// The path where the SSH secret backend is mounted.
// +kubebuilder:validation:Optional
Backend *string `json:"backend,omitempty" tf:"backend,omitempty"`
// The comma-separated string of CIDR blocks for which this role is applicable.
// +kubebuilder:validation:Optional
CidrList *string `json:"cidrList,omitempty" tf:"cidr_list,omitempty"`
// Specifies a map of critical options that certificates have when signed.
// +kubebuilder:validation:Optional
DefaultCriticalOptions map[string]*string `json:"defaultCriticalOptions,omitempty" tf:"default_critical_options,omitempty"`
// Specifies a map of extensions that certificates have when signed.
// +kubebuilder:validation:Optional
DefaultExtensions map[string]*string `json:"defaultExtensions,omitempty" tf:"default_extensions,omitempty"`
// Specifies the default username for which a credential will be generated.
// +kubebuilder:validation:Optional
DefaultUser *string `json:"defaultUser,omitempty" tf:"default_user,omitempty"`
// If set, default_users can be specified using identity template values. A non-templated user is also permitted.
// +kubebuilder:validation:Optional
DefaultUserTemplate *bool `json:"defaultUserTemplate,omitempty" tf:"default_user_template,omitempty"`
// Specifies a custom format for the key id of a signed certificate.
// +kubebuilder:validation:Optional
KeyIDFormat *string `json:"keyIdFormat,omitempty" tf:"key_id_format,omitempty"`
// Specifies the type of credentials generated by this role. This can be either otp, dynamic or ca.
// +kubebuilder:validation:Optional
KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"`
// Specifies the maximum Time To Live value.
// +kubebuilder:validation:Optional
MaxTTL *string `json:"maxTtl,omitempty" tf:"max_ttl,omitempty"`
// Specifies the name of the role to create.
// Unique name for the role.
// +kubebuilder:validation:Optional
Name *string `json:"name,omitempty" tf:"name,omitempty"`
// The namespace to provision the resource in.
// The value should not contain leading or trailing forward slashes.
// The namespace is always relative to the provider's configured namespace.
// Available only for Vault Enterprise.
// Target namespace. (requires Enterprise)
// +kubebuilder:validation:Optional
Namespace *string `json:"namespace,omitempty" tf:"namespace,omitempty"`
// Specifies the duration by which to backdate the ValidAfter property.
// Uses duration format strings.
// Specifies the duration by which to backdate the ValidAfter property. Uses duration format strings.
// +kubebuilder:validation:Optional
NotBeforeDuration *string `json:"notBeforeDuration,omitempty" tf:"not_before_duration,omitempty"`
// Specifies the Time To Live value.
// +kubebuilder:validation:Optional
TTL *string `json:"ttl,omitempty" tf:"ttl,omitempty"`
}
// SecretBackendRoleSpec defines the desired state of SecretBackendRole
type SecretBackendRoleSpec struct {
v1.ResourceSpec `json:",inline"`
ForProvider SecretBackendRoleParameters `json:"forProvider"`
// THIS IS AN ALPHA FIELD. Do not use it in production. It is not honored
// unless the relevant Crossplane feature flag is enabled, and may be
// changed or removed without notice.
// InitProvider holds the same fields as ForProvider, with the exception
// of Identifier and other resource reference fields. The fields that are
// in InitProvider are merged into ForProvider when the resource is created.
// The same fields are also added to the terraform ignore_changes hook, to
// avoid updating them after creation. This is useful for fields that are
// required on creation, but we do not desire to update them after creation,
// for example because of an external controller is managing them, like an
// autoscaler.
InitProvider SecretBackendRoleInitParameters `json:"initProvider,omitempty"`
}
// SecretBackendRoleStatus defines the observed state of SecretBackendRole.
type SecretBackendRoleStatus struct {
v1.ResourceStatus `json:",inline"`
AtProvider SecretBackendRoleObservation `json:"atProvider,omitempty"`
}
// +kubebuilder:object:root=true
// SecretBackendRole is the Schema for the SecretBackendRoles API. Managing roles in an SSH secret backend in Vault
// +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status"
// +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status"
// +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name"
// +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp"
// +kubebuilder:subresource:status
// +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,vault}
type SecretBackendRole struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.backend) || has(self.initProvider.backend)",message="backend is a required parameter"
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.keyType) || has(self.initProvider.keyType)",message="keyType is a required parameter"
// +kubebuilder:validation:XValidation:rule="!('*' in self.managementPolicies || 'Create' in self.managementPolicies || 'Update' in self.managementPolicies) || has(self.forProvider.name) || has(self.initProvider.name)",message="name is a required parameter"
Spec SecretBackendRoleSpec `json:"spec"`
Status SecretBackendRoleStatus `json:"status,omitempty"`
}
// +kubebuilder:object:root=true
// SecretBackendRoleList contains a list of SecretBackendRoles
type SecretBackendRoleList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []SecretBackendRole `json:"items"`
}
// Repository type metadata.
var (
SecretBackendRole_Kind = "SecretBackendRole"
SecretBackendRole_GroupKind = schema.GroupKind{Group: CRDGroup, Kind: SecretBackendRole_Kind}.String()
SecretBackendRole_KindAPIVersion = SecretBackendRole_Kind + "." + CRDGroupVersion.String()
SecretBackendRole_GroupVersionKind = CRDGroupVersion.WithKind(SecretBackendRole_Kind)
)
func init() {
SchemeBuilder.Register(&SecretBackendRole{}, &SecretBackendRoleList{})
}