@r8s/crds 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (91) hide show
  1. package/crds/certmanager-certificate.yaml +794 -0
  2. package/crds/certmanager-clusterissuer.yaml +3739 -0
  3. package/crds/clickhouse-installation.yaml +1847 -0
  4. package/crds/cnpg-cluster.yaml +6794 -0
  5. package/crds/cnpg-pooler.yaml +9311 -0
  6. package/crds/cnpg-scheduledbackup.yaml +191 -0
  7. package/crds/envoy-backendtrafficpolicy.yaml +1 -0
  8. package/crds/envoy-clienttrafficpolicy.yaml +1 -0
  9. package/crds/envoy-envoyproxy.yaml +1 -0
  10. package/crds/envoy-proxy.yaml +16626 -0
  11. package/crds/envoy-securitypolicy.yaml +1 -0
  12. package/crds/externaldns-endpoint.yaml +94 -0
  13. package/crds/gatewayapi-gateway.yaml +2253 -0
  14. package/crds/gatewayapi-httproute.yaml +5643 -0
  15. package/crds/keycloak-keycloak.yaml +3192 -0
  16. package/crds/keycloak-realmimport.yaml +2878 -0
  17. package/crds/logging-flow.yaml +1768 -0
  18. package/crds/logging-logging.yaml +16770 -0
  19. package/crds/logging-output.yaml +14658 -0
  20. package/crds/loki-lokistack.yaml +5390 -0
  21. package/crds/prometheus-alertmanager.yaml +10013 -0
  22. package/crds/prometheus-podmonitor.yaml +741 -0
  23. package/crds/prometheus-prometheus.yaml +13928 -0
  24. package/crds/prometheus-prometheusrule.yaml +267 -0
  25. package/crds/prometheus-scrapeconfig.yaml +12938 -0
  26. package/crds/prometheus-servicemonitor.yaml +764 -0
  27. package/crds/prometheus-thanosruler.yaml +9795 -0
  28. package/crds/redis-cluster.yaml +7862 -0
  29. package/crds/redis-failover.yaml +1 -0
  30. package/crds/redis-replication.yaml +5593 -0
  31. package/crds/velero-backups.yaml +630 -0
  32. package/crds/velero-backupstoragelocations.yaml +174 -0
  33. package/crds/velero-schedules.yaml +584 -0
  34. package/dist/generated/cert-manager.d.ts +873 -0
  35. package/dist/generated/cert-manager.d.ts.map +1 -0
  36. package/dist/generated/cert-manager.js +24 -0
  37. package/dist/generated/cert-manager.js.map +1 -0
  38. package/dist/generated/clickhouse.d.ts +692 -0
  39. package/dist/generated/clickhouse.d.ts.map +1 -0
  40. package/dist/generated/clickhouse.js +14 -0
  41. package/dist/generated/clickhouse.js.map +1 -0
  42. package/dist/generated/externaldns.d.ts +47 -0
  43. package/dist/generated/externaldns.d.ts.map +1 -0
  44. package/dist/generated/externaldns.js +14 -0
  45. package/dist/generated/externaldns.js.map +1 -0
  46. package/dist/generated/gateway.d.ts +2396 -0
  47. package/dist/generated/gateway.d.ts.map +1 -0
  48. package/dist/generated/gateway.js +34 -0
  49. package/dist/generated/gateway.js.map +1 -0
  50. package/dist/generated/index.d.ts +24 -0
  51. package/dist/generated/index.d.ts.map +1 -0
  52. package/dist/generated/index.js +61 -0
  53. package/dist/generated/index.js.map +1 -0
  54. package/dist/generated/keycloak.d.ts +1607 -0
  55. package/dist/generated/keycloak.d.ts.map +1 -0
  56. package/dist/generated/keycloak.js +24 -0
  57. package/dist/generated/keycloak.js.map +1 -0
  58. package/dist/generated/logging.d.ts +3487 -0
  59. package/dist/generated/logging.d.ts.map +1 -0
  60. package/dist/generated/logging.js +34 -0
  61. package/dist/generated/logging.js.map +1 -0
  62. package/dist/generated/loki.d.ts +578 -0
  63. package/dist/generated/loki.d.ts.map +1 -0
  64. package/dist/generated/loki.js +14 -0
  65. package/dist/generated/loki.js.map +1 -0
  66. package/dist/generated/monitoring.d.ts +4230 -0
  67. package/dist/generated/monitoring.d.ts.map +1 -0
  68. package/dist/generated/monitoring.js +74 -0
  69. package/dist/generated/monitoring.js.map +1 -0
  70. package/dist/generated/operators.d.ts +18 -0
  71. package/dist/generated/operators.d.ts.map +1 -0
  72. package/dist/generated/operators.js +191 -0
  73. package/dist/generated/operators.js.map +1 -0
  74. package/dist/generated/postgresql.d.ts +2820 -0
  75. package/dist/generated/postgresql.d.ts.map +1 -0
  76. package/dist/generated/postgresql.js +34 -0
  77. package/dist/generated/postgresql.js.map +1 -0
  78. package/dist/generated/redis.d.ts +1253 -0
  79. package/dist/generated/redis.d.ts.map +1 -0
  80. package/dist/generated/redis.js +24 -0
  81. package/dist/generated/redis.js.map +1 -0
  82. package/dist/generated/velero.d.ts +351 -0
  83. package/dist/generated/velero.d.ts.map +1 -0
  84. package/dist/generated/velero.js +34 -0
  85. package/dist/generated/velero.js.map +1 -0
  86. package/dist/index.d.ts +18 -0
  87. package/dist/index.d.ts.map +1 -0
  88. package/dist/index.js +34 -0
  89. package/dist/index.js.map +1 -0
  90. package/operators.yaml +196 -0
  91. package/package.json +49 -0
@@ -0,0 +1,794 @@
1
+ # START crd {{- if or .Values.crds.enabled .Values.installCRDs }}
2
+ apiVersion: apiextensions.k8s.io/v1
3
+ kind: CustomResourceDefinition
4
+ metadata:
5
+ name: certificates.cert-manager.io
6
+ # START annotations {{- if .Values.crds.keep }}
7
+ annotations:
8
+ helm.sh/resource-policy: keep
9
+ # END annotations {{- end }}
10
+ labels:
11
+ app: '{{ template "cert-manager.name" . }}'
12
+ app.kubernetes.io/name: '{{ template "cert-manager.name" . }}'
13
+ app.kubernetes.io/instance: '{{ .Release.Name }}'
14
+ # Generated labels {{- include "labels" . | nindent 4 }}
15
+ spec:
16
+ group: cert-manager.io
17
+ names:
18
+ kind: Certificate
19
+ listKind: CertificateList
20
+ plural: certificates
21
+ shortNames:
22
+ - cert
23
+ - certs
24
+ singular: certificate
25
+ categories:
26
+ - cert-manager
27
+ scope: Namespaced
28
+ versions:
29
+ - name: v1
30
+ subresources:
31
+ status: {}
32
+ additionalPrinterColumns:
33
+ - jsonPath: .status.conditions[?(@.type=="Ready")].status
34
+ name: Ready
35
+ type: string
36
+ - jsonPath: .spec.secretName
37
+ name: Secret
38
+ type: string
39
+ - jsonPath: .spec.issuerRef.name
40
+ name: Issuer
41
+ priority: 1
42
+ type: string
43
+ - jsonPath: .status.conditions[?(@.type=="Ready")].message
44
+ name: Status
45
+ priority: 1
46
+ type: string
47
+ - jsonPath: .metadata.creationTimestamp
48
+ description: CreationTimestamp is a timestamp representing the server time when this object was created. It is not guaranteed to be set in happens-before order across separate operations. Clients may not set this value. It is represented in RFC3339 form and is in UTC.
49
+ name: Age
50
+ type: date
51
+ schema:
52
+ openAPIV3Schema:
53
+ description: |-
54
+ A Certificate resource should be created to ensure an up to date and signed
55
+ X.509 certificate is stored in the Kubernetes Secret resource named in `spec.secretName`.
56
+
57
+ The stored certificate will be renewed before it expires (as configured by `spec.renewBefore`).
58
+ type: object
59
+ properties:
60
+ apiVersion:
61
+ description: |-
62
+ APIVersion defines the versioned schema of this representation of an object.
63
+ Servers should convert recognized schemas to the latest internal value, and
64
+ may reject unrecognized values.
65
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
66
+ type: string
67
+ kind:
68
+ description: |-
69
+ Kind is a string value representing the REST resource this object represents.
70
+ Servers may infer this from the endpoint the client submits requests to.
71
+ Cannot be updated.
72
+ In CamelCase.
73
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
74
+ type: string
75
+ metadata:
76
+ type: object
77
+ spec:
78
+ description: |-
79
+ Specification of the desired state of the Certificate resource.
80
+ https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
81
+ type: object
82
+ required:
83
+ - issuerRef
84
+ - secretName
85
+ properties:
86
+ additionalOutputFormats:
87
+ description: |-
88
+ Defines extra output formats of the private key and signed certificate chain
89
+ to be written to this Certificate's target Secret.
90
+ type: array
91
+ items:
92
+ description: |-
93
+ CertificateAdditionalOutputFormat defines an additional output format of a
94
+ Certificate resource. These contain supplementary data formats of the signed
95
+ certificate chain and paired private key.
96
+ type: object
97
+ required:
98
+ - type
99
+ properties:
100
+ type:
101
+ description: |-
102
+ Type is the name of the format type that should be written to the
103
+ Certificate's target Secret.
104
+ type: string
105
+ enum:
106
+ - DER
107
+ - CombinedPEM
108
+ commonName:
109
+ description: |-
110
+ Requested common name X509 certificate subject attribute.
111
+ More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6
112
+ NOTE: TLS clients will ignore this value when any subject alternative name is
113
+ set (see https://tools.ietf.org/html/rfc6125#section-6.4.4).
114
+
115
+ Should have a length of 64 characters or fewer to avoid generating invalid CSRs.
116
+ Cannot be set if the `literalSubject` field is set.
117
+ type: string
118
+ dnsNames:
119
+ description: Requested DNS subject alternative names.
120
+ type: array
121
+ items:
122
+ type: string
123
+ duration:
124
+ description: |-
125
+ Requested 'duration' (i.e. lifetime) of the Certificate. Note that the
126
+ issuer may choose to ignore the requested duration, just like any other
127
+ requested attribute.
128
+
129
+ If unset, this defaults to 90 days.
130
+ Minimum accepted duration is 1 hour.
131
+ Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.
132
+ type: string
133
+ emailAddresses:
134
+ description: Requested email subject alternative names.
135
+ type: array
136
+ items:
137
+ type: string
138
+ encodeUsagesInRequest:
139
+ description: |-
140
+ Whether the KeyUsage and ExtKeyUsage extensions should be set in the encoded CSR.
141
+
142
+ This option defaults to true, and should only be disabled if the target
143
+ issuer does not support CSRs with these X509 KeyUsage/ ExtKeyUsage extensions.
144
+ type: boolean
145
+ ipAddresses:
146
+ description: Requested IP address subject alternative names.
147
+ type: array
148
+ items:
149
+ type: string
150
+ isCA:
151
+ description: |-
152
+ Requested basic constraints isCA value.
153
+ The isCA value is used to set the `isCA` field on the created CertificateRequest
154
+ resources. Note that the issuer may choose to ignore the requested isCA value, just
155
+ like any other requested attribute.
156
+
157
+ If true, this will automatically add the `cert sign` usage to the list
158
+ of requested `usages`.
159
+ type: boolean
160
+ issuerRef:
161
+ description: |-
162
+ Reference to the issuer responsible for issuing the certificate.
163
+ If the issuer is namespace-scoped, it must be in the same namespace
164
+ as the Certificate. If the issuer is cluster-scoped, it can be used
165
+ from any namespace.
166
+
167
+ The `name` field of the reference must always be specified.
168
+ type: object
169
+ required:
170
+ - name
171
+ properties:
172
+ group:
173
+ description: Group of the resource being referred to.
174
+ type: string
175
+ kind:
176
+ description: Kind of the resource being referred to.
177
+ type: string
178
+ name:
179
+ description: Name of the resource being referred to.
180
+ type: string
181
+ keystores:
182
+ description: Additional keystore output formats to be stored in the Certificate's Secret.
183
+ type: object
184
+ properties:
185
+ jks:
186
+ description: |-
187
+ JKS configures options for storing a JKS keystore in the
188
+ `spec.secretName` Secret resource.
189
+ type: object
190
+ required:
191
+ - create
192
+ properties:
193
+ alias:
194
+ description: |-
195
+ Alias specifies the alias of the key in the keystore, required by the JKS format.
196
+ If not provided, the default alias `certificate` will be used.
197
+ type: string
198
+ create:
199
+ description: |-
200
+ Create enables JKS keystore creation for the Certificate.
201
+ If true, a file named `keystore.jks` will be created in the target
202
+ Secret resource, encrypted using the password stored in
203
+ `passwordSecretRef` or `password`.
204
+ The keystore file will be updated immediately.
205
+ If the issuer provided a CA certificate, a file named `truststore.jks`
206
+ will also be created in the target Secret resource, encrypted using the
207
+ password stored in `passwordSecretRef`
208
+ containing the issuing Certificate Authority
209
+ type: boolean
210
+ password:
211
+ description: |-
212
+ Password provides a literal password used to encrypt the JKS keystore.
213
+ Mutually exclusive with passwordSecretRef.
214
+ One of password or passwordSecretRef must provide a password with a non-zero length.
215
+ type: string
216
+ passwordSecretRef:
217
+ description: |-
218
+ PasswordSecretRef is a reference to a non-empty key in a Secret resource
219
+ containing the password used to encrypt the JKS keystore.
220
+ Mutually exclusive with password.
221
+ One of password or passwordSecretRef must provide a password with a non-zero length.
222
+ type: object
223
+ required:
224
+ - name
225
+ properties:
226
+ key:
227
+ description: |-
228
+ The key of the entry in the Secret resource's `data` field to be used.
229
+ Some instances of this field may be defaulted, in others it may be
230
+ required.
231
+ type: string
232
+ name:
233
+ description: |-
234
+ Name of the resource being referred to.
235
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
236
+ type: string
237
+ pkcs12:
238
+ description: |-
239
+ PKCS12 configures options for storing a PKCS12 keystore in the
240
+ `spec.secretName` Secret resource.
241
+ type: object
242
+ required:
243
+ - create
244
+ properties:
245
+ create:
246
+ description: |-
247
+ Create enables PKCS12 keystore creation for the Certificate.
248
+ If true, a file named `keystore.p12` will be created in the target
249
+ Secret resource, encrypted using the password stored in
250
+ `passwordSecretRef` or in `password`.
251
+ The keystore file will be updated immediately.
252
+ If the issuer provided a CA certificate, a file named `truststore.p12` will
253
+ also be created in the target Secret resource, encrypted using the
254
+ password stored in `passwordSecretRef` containing the issuing Certificate
255
+ Authority
256
+ type: boolean
257
+ password:
258
+ description: |-
259
+ Password provides a literal password used to encrypt the PKCS#12 keystore.
260
+ Mutually exclusive with passwordSecretRef.
261
+ One of password or passwordSecretRef must provide a password with a non-zero length.
262
+ type: string
263
+ passwordSecretRef:
264
+ description: |-
265
+ PasswordSecretRef is a reference to a non-empty key in a Secret resource
266
+ containing the password used to encrypt the PKCS#12 keystore.
267
+ Mutually exclusive with password.
268
+ One of password or passwordSecretRef must provide a password with a non-zero length.
269
+ type: object
270
+ required:
271
+ - name
272
+ properties:
273
+ key:
274
+ description: |-
275
+ The key of the entry in the Secret resource's `data` field to be used.
276
+ Some instances of this field may be defaulted, in others it may be
277
+ required.
278
+ type: string
279
+ name:
280
+ description: |-
281
+ Name of the resource being referred to.
282
+ More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
283
+ type: string
284
+ profile:
285
+ description: |-
286
+ Profile specifies the key and certificate encryption algorithms and the HMAC algorithm
287
+ used to create the PKCS12 keystore. Default value is `LegacyRC2` for backward compatibility.
288
+
289
+ If provided, allowed values are:
290
+ `LegacyRC2`: Deprecated. Not supported by default in OpenSSL 3 or Java 20.
291
+ `LegacyDES`: Less secure algorithm. Use this option for maximal compatibility.
292
+ `Modern2023`: Secure algorithm. Use this option in case you have to always use secure algorithms
293
+ (e.g., because of company policy). Please note that the security of the algorithm is not that important
294
+ in reality, because the unencrypted certificate and private key are also stored in the Secret.
295
+ type: string
296
+ enum:
297
+ - LegacyRC2
298
+ - LegacyDES
299
+ - Modern2023
300
+ literalSubject:
301
+ description: |-
302
+ Requested X.509 certificate subject, represented using the LDAP "String
303
+ Representation of a Distinguished Name" [1].
304
+ Important: the LDAP string format also specifies the order of the attributes
305
+ in the subject, this is important when issuing certs for LDAP authentication.
306
+ Example: `CN=foo,DC=corp,DC=example,DC=com`
307
+ More info [1]: https://datatracker.ietf.org/doc/html/rfc4514
308
+ More info: https://github.com/cert-manager/cert-manager/issues/3203
309
+ More info: https://github.com/cert-manager/cert-manager/issues/4424
310
+
311
+ Cannot be set if the `subject` or `commonName` field is set.
312
+ type: string
313
+ nameConstraints:
314
+ description: |-
315
+ x.509 certificate NameConstraint extension which MUST NOT be used in a non-CA certificate.
316
+ More Info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.2.1.10
317
+
318
+ This is an Alpha Feature and is only enabled with the
319
+ `--feature-gates=NameConstraints=true` option set on both
320
+ the controller and webhook components.
321
+ type: object
322
+ properties:
323
+ critical:
324
+ description: if true then the name constraints are marked critical.
325
+ type: boolean
326
+ excluded:
327
+ description: |-
328
+ Excluded contains the constraints which must be disallowed. Any name matching a
329
+ restriction in the excluded field is invalid regardless
330
+ of information appearing in the permitted
331
+ type: object
332
+ properties:
333
+ dnsDomains:
334
+ description: DNSDomains is a list of DNS domains that are permitted or excluded.
335
+ type: array
336
+ items:
337
+ type: string
338
+ emailAddresses:
339
+ description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
340
+ type: array
341
+ items:
342
+ type: string
343
+ ipRanges:
344
+ description: |-
345
+ IPRanges is a list of IP Ranges that are permitted or excluded.
346
+ This should be a valid CIDR notation.
347
+ type: array
348
+ items:
349
+ type: string
350
+ uriDomains:
351
+ description: URIDomains is a list of URI domains that are permitted or excluded.
352
+ type: array
353
+ items:
354
+ type: string
355
+ permitted:
356
+ description: Permitted contains the constraints in which the names must be located.
357
+ type: object
358
+ properties:
359
+ dnsDomains:
360
+ description: DNSDomains is a list of DNS domains that are permitted or excluded.
361
+ type: array
362
+ items:
363
+ type: string
364
+ emailAddresses:
365
+ description: EmailAddresses is a list of Email Addresses that are permitted or excluded.
366
+ type: array
367
+ items:
368
+ type: string
369
+ ipRanges:
370
+ description: |-
371
+ IPRanges is a list of IP Ranges that are permitted or excluded.
372
+ This should be a valid CIDR notation.
373
+ type: array
374
+ items:
375
+ type: string
376
+ uriDomains:
377
+ description: URIDomains is a list of URI domains that are permitted or excluded.
378
+ type: array
379
+ items:
380
+ type: string
381
+ otherNames:
382
+ description: |-
383
+ `otherNames` is an escape hatch for SAN that allows any type. We currently restrict the support to string like otherNames, cf RFC 5280 p 37
384
+ Any UTF8 String valued otherName can be passed with by setting the keys oid: x.x.x.x and UTF8Value: somevalue for `otherName`.
385
+ Most commonly this would be UPN set with oid: 1.3.6.1.4.1.311.20.2.3
386
+ You should ensure that any OID passed is valid for the UTF8String type as we do not explicitly validate this.
387
+ type: array
388
+ items:
389
+ type: object
390
+ properties:
391
+ oid:
392
+ description: |-
393
+ OID is the object identifier for the otherName SAN.
394
+ The object identifier must be expressed as a dotted string, for
395
+ example, "1.2.840.113556.1.4.221".
396
+ type: string
397
+ utf8Value:
398
+ description: |-
399
+ utf8Value is the string value of the otherName SAN.
400
+ The utf8Value accepts any valid UTF8 string to set as value for the otherName SAN.
401
+ type: string
402
+ privateKey:
403
+ description: |-
404
+ Private key options. These include the key algorithm and size, the used
405
+ encoding and the rotation policy.
406
+ type: object
407
+ properties:
408
+ algorithm:
409
+ description: |-
410
+ Algorithm is the private key algorithm of the corresponding private key
411
+ for this certificate.
412
+
413
+ If provided, allowed values are either `RSA`, `ECDSA` or `Ed25519`.
414
+ If `algorithm` is specified and `size` is not provided,
415
+ key size of 2048 will be used for `RSA` key algorithm and
416
+ key size of 256 will be used for `ECDSA` key algorithm.
417
+ key size is ignored when using the `Ed25519` key algorithm.
418
+ type: string
419
+ enum:
420
+ - RSA
421
+ - ECDSA
422
+ - Ed25519
423
+ encoding:
424
+ description: |-
425
+ The private key cryptography standards (PKCS) encoding for this
426
+ certificate's private key to be encoded in.
427
+
428
+ If provided, allowed values are `PKCS1` and `PKCS8` standing for PKCS#1
429
+ and PKCS#8, respectively.
430
+ Defaults to `PKCS1` if not specified.
431
+ type: string
432
+ enum:
433
+ - PKCS1
434
+ - PKCS8
435
+ rotationPolicy:
436
+ description: |-
437
+ RotationPolicy controls how private keys should be regenerated when a
438
+ re-issuance is being processed.
439
+
440
+ If set to `Never`, a private key will only be generated if one does not
441
+ already exist in the target `spec.secretName`. If one does exist but it
442
+ does not have the correct algorithm or size, a warning will be raised
443
+ to await user intervention.
444
+ If set to `Always`, a private key matching the specified requirements
445
+ will be generated whenever a re-issuance occurs.
446
+ Default is `Always`.
447
+ The default was changed from `Never` to `Always` in cert-manager >=v1.18.0.
448
+ The new default can be disabled by setting the
449
+ `--feature-gates=DefaultPrivateKeyRotationPolicyAlways=false` option on
450
+ the controller component.
451
+ type: string
452
+ enum:
453
+ - Never
454
+ - Always
455
+ size:
456
+ description: |-
457
+ Size is the key bit size of the corresponding private key for this certificate.
458
+
459
+ If `algorithm` is set to `RSA`, valid values are `2048`, `4096` or `8192`,
460
+ and will default to `2048` if not specified.
461
+ If `algorithm` is set to `ECDSA`, valid values are `256`, `384` or `521`,
462
+ and will default to `256` if not specified.
463
+ If `algorithm` is set to `Ed25519`, Size is ignored.
464
+ No other values are allowed.
465
+ type: integer
466
+ renewBefore:
467
+ description: |-
468
+ How long before the currently issued certificate's expiry cert-manager should
469
+ renew the certificate. For example, if a certificate is valid for 60 minutes,
470
+ and `renewBefore=10m`, cert-manager will begin to attempt to renew the certificate
471
+ 50 minutes after it was issued (i.e. when there are 10 minutes remaining until
472
+ the certificate is no longer valid).
473
+
474
+ NOTE: The actual lifetime of the issued certificate is used to determine the
475
+ renewal time. If an issuer returns a certificate with a different lifetime than
476
+ the one requested, cert-manager will use the lifetime of the issued certificate.
477
+
478
+ If unset, this defaults to 1/3 of the issued certificate's lifetime.
479
+ Minimum accepted value is 5 minutes.
480
+ Value must be in units accepted by Go time.ParseDuration https://golang.org/pkg/time/#ParseDuration.
481
+ Cannot be set if the `renewBeforePercentage` field is set.
482
+ type: string
483
+ renewBeforePercentage:
484
+ description: |-
485
+ `renewBeforePercentage` is like `renewBefore`, except it is a relative percentage
486
+ rather than an absolute duration. For example, if a certificate is valid for 60
487
+ minutes, and `renewBeforePercentage=25`, cert-manager will begin to attempt to
488
+ renew the certificate 45 minutes after it was issued (i.e. when there are 15
489
+ minutes (25%) remaining until the certificate is no longer valid).
490
+
491
+ NOTE: The actual lifetime of the issued certificate is used to determine the
492
+ renewal time. If an issuer returns a certificate with a different lifetime than
493
+ the one requested, cert-manager will use the lifetime of the issued certificate.
494
+
495
+ Value must be an integer in the range (0,100). The minimum effective
496
+ `renewBefore` derived from the `renewBeforePercentage` and `duration` fields is 5
497
+ minutes.
498
+ Cannot be set if the `renewBefore` field is set.
499
+ type: integer
500
+ format: int32
501
+ revisionHistoryLimit:
502
+ description: |-
503
+ The maximum number of CertificateRequest revisions that are maintained in
504
+ the Certificate's history. Each revision represents a single `CertificateRequest`
505
+ created by this Certificate, either when it was created, renewed, or Spec
506
+ was changed. Revisions will be removed by oldest first if the number of
507
+ revisions exceeds this number.
508
+
509
+ If set, revisionHistoryLimit must be a value of `1` or greater.
510
+ Default value is `1`.
511
+ type: integer
512
+ format: int32
513
+ secretName:
514
+ description: |-
515
+ Name of the Secret resource that will be automatically created and
516
+ managed by this Certificate resource. It will be populated with a
517
+ private key and certificate, signed by the denoted issuer. The Secret
518
+ resource lives in the same namespace as the Certificate resource.
519
+ type: string
520
+ secretTemplate:
521
+ description: |-
522
+ Defines annotations and labels to be copied to the Certificate's Secret.
523
+ Labels and annotations on the Secret will be changed as they appear on the
524
+ SecretTemplate when added or removed. SecretTemplate annotations are added
525
+ in conjunction with, and cannot overwrite, the base set of annotations
526
+ cert-manager sets on the Certificate's Secret.
527
+ type: object
528
+ properties:
529
+ annotations:
530
+ description: Annotations is a key value map to be copied to the target Kubernetes Secret.
531
+ type: object
532
+ additionalProperties:
533
+ type: string
534
+ labels:
535
+ description: Labels is a key value map to be copied to the target Kubernetes Secret.
536
+ type: object
537
+ additionalProperties:
538
+ type: string
539
+ signatureAlgorithm:
540
+ description: |-
541
+ Signature algorithm to use.
542
+ Allowed values for RSA keys: SHA256WithRSA, SHA384WithRSA, SHA512WithRSA.
543
+ Allowed values for ECDSA keys: ECDSAWithSHA256, ECDSAWithSHA384, ECDSAWithSHA512.
544
+ Allowed values for Ed25519 keys: PureEd25519.
545
+ type: string
546
+ enum:
547
+ - SHA256WithRSA
548
+ - SHA384WithRSA
549
+ - SHA512WithRSA
550
+ - ECDSAWithSHA256
551
+ - ECDSAWithSHA384
552
+ - ECDSAWithSHA512
553
+ - PureEd25519
554
+ subject:
555
+ description: |-
556
+ Requested set of X509 certificate subject attributes.
557
+ More info: https://datatracker.ietf.org/doc/html/rfc5280#section-4.1.2.6
558
+
559
+ The common name attribute is specified separately in the `commonName` field.
560
+ Cannot be set if the `literalSubject` field is set.
561
+ type: object
562
+ properties:
563
+ countries:
564
+ description: Countries to be used on the Certificate.
565
+ type: array
566
+ items:
567
+ type: string
568
+ localities:
569
+ description: Cities to be used on the Certificate.
570
+ type: array
571
+ items:
572
+ type: string
573
+ organizationalUnits:
574
+ description: Organizational Units to be used on the Certificate.
575
+ type: array
576
+ items:
577
+ type: string
578
+ organizations:
579
+ description: Organizations to be used on the Certificate.
580
+ type: array
581
+ items:
582
+ type: string
583
+ postalCodes:
584
+ description: Postal codes to be used on the Certificate.
585
+ type: array
586
+ items:
587
+ type: string
588
+ provinces:
589
+ description: State/Provinces to be used on the Certificate.
590
+ type: array
591
+ items:
592
+ type: string
593
+ serialNumber:
594
+ description: Serial number to be used on the Certificate.
595
+ type: string
596
+ streetAddresses:
597
+ description: Street addresses to be used on the Certificate.
598
+ type: array
599
+ items:
600
+ type: string
601
+ uris:
602
+ description: Requested URI subject alternative names.
603
+ type: array
604
+ items:
605
+ type: string
606
+ usages:
607
+ description: |-
608
+ Requested key usages and extended key usages.
609
+ These usages are used to set the `usages` field on the created CertificateRequest
610
+ resources. If `encodeUsagesInRequest` is unset or set to `true`, the usages
611
+ will additionally be encoded in the `request` field which contains the CSR blob.
612
+
613
+ If unset, defaults to `digital signature` and `key encipherment`.
614
+ type: array
615
+ items:
616
+ description: |-
617
+ KeyUsage specifies valid usage contexts for keys.
618
+ See:
619
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.3
620
+ https://tools.ietf.org/html/rfc5280#section-4.2.1.12
621
+
622
+ Valid KeyUsage values are as follows:
623
+ "signing",
624
+ "digital signature",
625
+ "content commitment",
626
+ "key encipherment",
627
+ "key agreement",
628
+ "data encipherment",
629
+ "cert sign",
630
+ "crl sign",
631
+ "encipher only",
632
+ "decipher only",
633
+ "any",
634
+ "server auth",
635
+ "client auth",
636
+ "code signing",
637
+ "email protection",
638
+ "s/mime",
639
+ "ipsec end system",
640
+ "ipsec tunnel",
641
+ "ipsec user",
642
+ "timestamping",
643
+ "ocsp signing",
644
+ "microsoft sgc",
645
+ "netscape sgc"
646
+ type: string
647
+ enum:
648
+ - signing
649
+ - digital signature
650
+ - content commitment
651
+ - key encipherment
652
+ - key agreement
653
+ - data encipherment
654
+ - cert sign
655
+ - crl sign
656
+ - encipher only
657
+ - decipher only
658
+ - any
659
+ - server auth
660
+ - client auth
661
+ - code signing
662
+ - email protection
663
+ - s/mime
664
+ - ipsec end system
665
+ - ipsec tunnel
666
+ - ipsec user
667
+ - timestamping
668
+ - ocsp signing
669
+ - microsoft sgc
670
+ - netscape sgc
671
+ status:
672
+ description: |-
673
+ Status of the Certificate.
674
+ This is set and managed automatically.
675
+ Read-only.
676
+ More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status
677
+ type: object
678
+ properties:
679
+ conditions:
680
+ description: |-
681
+ List of status conditions to indicate the status of certificates.
682
+ Known condition types are `Ready` and `Issuing`.
683
+ type: array
684
+ items:
685
+ description: CertificateCondition contains condition information for a Certificate.
686
+ type: object
687
+ required:
688
+ - status
689
+ - type
690
+ properties:
691
+ lastTransitionTime:
692
+ description: |-
693
+ LastTransitionTime is the timestamp corresponding to the last status
694
+ change of this condition.
695
+ type: string
696
+ format: date-time
697
+ message:
698
+ description: |-
699
+ Message is a human readable description of the details of the last
700
+ transition, complementing reason.
701
+ type: string
702
+ observedGeneration:
703
+ description: |-
704
+ If set, this represents the .metadata.generation that the condition was
705
+ set based upon.
706
+ For instance, if .metadata.generation is currently 12, but the
707
+ .status.condition[x].observedGeneration is 9, the condition is out of date
708
+ with respect to the current state of the Certificate.
709
+ type: integer
710
+ format: int64
711
+ reason:
712
+ description: |-
713
+ Reason is a brief machine readable explanation for the condition's last
714
+ transition.
715
+ type: string
716
+ status:
717
+ description: Status of the condition, one of (`True`, `False`, `Unknown`).
718
+ type: string
719
+ enum:
720
+ - "True"
721
+ - "False"
722
+ - Unknown
723
+ type:
724
+ description: Type of the condition, known values are (`Ready`, `Issuing`).
725
+ type: string
726
+ x-kubernetes-list-map-keys:
727
+ - type
728
+ x-kubernetes-list-type: map
729
+ failedIssuanceAttempts:
730
+ description: |-
731
+ The number of continuous failed issuance attempts up till now. This
732
+ field gets removed (if set) on a successful issuance and gets set to
733
+ 1 if unset and an issuance has failed. If an issuance has failed, the
734
+ delay till the next issuance will be calculated using formula
735
+ time.Hour * 2 ^ (failedIssuanceAttempts - 1).
736
+ type: integer
737
+ lastFailureTime:
738
+ description: |-
739
+ LastFailureTime is set only if the latest issuance for this
740
+ Certificate failed and contains the time of the failure. If an
741
+ issuance has failed, the delay till the next issuance will be
742
+ calculated using formula time.Hour * 2 ^ (failedIssuanceAttempts -
743
+ 1). If the latest issuance has succeeded this field will be unset.
744
+ type: string
745
+ format: date-time
746
+ nextPrivateKeySecretName:
747
+ description: |-
748
+ The name of the Secret resource containing the private key to be used
749
+ for the next certificate iteration.
750
+ The keymanager controller will automatically set this field if the
751
+ `Issuing` condition is set to `True`.
752
+ It will automatically unset this field when the Issuing condition is
753
+ not set or False.
754
+ type: string
755
+ notAfter:
756
+ description: |-
757
+ The expiration time of the certificate stored in the secret named
758
+ by this resource in `spec.secretName`.
759
+ type: string
760
+ format: date-time
761
+ notBefore:
762
+ description: |-
763
+ The time after which the certificate stored in the secret named
764
+ by this resource in `spec.secretName` is valid.
765
+ type: string
766
+ format: date-time
767
+ renewalTime:
768
+ description: |-
769
+ RenewalTime is the time at which the certificate will be next
770
+ renewed.
771
+ If not set, no upcoming renewal is scheduled.
772
+ type: string
773
+ format: date-time
774
+ revision:
775
+ description: |-
776
+ The current 'revision' of the certificate as issued.
777
+
778
+ When a CertificateRequest resource is created, it will have the
779
+ `cert-manager.io/certificate-revision` set to one greater than the
780
+ current value of this field.
781
+
782
+ Upon issuance, this field will be set to the value of the annotation
783
+ on the CertificateRequest resource used to issue the certificate.
784
+
785
+ Persisting the value on the CertificateRequest resource allows the
786
+ certificates controller to know whether a request is part of an old
787
+ issuance or if it is part of the ongoing revision's issuance by
788
+ checking if the revision value in the annotation is greater than this
789
+ field.
790
+ type: integer
791
+ served: true
792
+ storage: true
793
+
794
+ # END crd {{- end }}