timonel 2.8.0-beta.5 → 2.8.1

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 (128) hide show
  1. package/CHANGELOG.md +11 -21
  2. package/README.md +12 -55
  3. package/dist/cli.d.ts.map +1 -0
  4. package/dist/{src/cli.js → cli.js} +115 -82
  5. package/dist/cli.js.map +1 -0
  6. package/dist/index.d.ts +14 -0
  7. package/dist/index.d.ts.map +1 -0
  8. package/dist/index.js +13 -0
  9. package/dist/index.js.map +1 -0
  10. package/dist/{src/lib → lib}/helm.d.ts +234 -4
  11. package/dist/lib/helm.d.ts.map +1 -0
  12. package/dist/{src/lib → lib}/helm.js +309 -20
  13. package/dist/lib/helm.js.map +1 -0
  14. package/dist/lib/helmChartWriter.d.ts.map +1 -0
  15. package/dist/{src/lib → lib}/helmChartWriter.js +5 -19
  16. package/dist/lib/helmChartWriter.js.map +1 -0
  17. package/dist/{src/lib → lib}/resources/baseResourceProvider.d.ts +1 -1
  18. package/dist/lib/resources/baseResourceProvider.d.ts.map +1 -0
  19. package/dist/lib/resources/baseResourceProvider.js.map +1 -0
  20. package/dist/{src/lib → lib}/resources/cloud/aws/awsResources.d.ts +5 -14
  21. package/dist/lib/resources/cloud/aws/awsResources.d.ts.map +1 -0
  22. package/dist/{src/lib → lib}/resources/cloud/aws/awsResources.js +63 -78
  23. package/dist/lib/resources/cloud/aws/awsResources.js.map +1 -0
  24. package/dist/lib/resources/cloud/aws/karpenterResources.d.ts.map +1 -0
  25. package/dist/lib/resources/cloud/aws/karpenterResources.js.map +1 -0
  26. package/dist/lib/rutter.d.ts +445 -0
  27. package/dist/lib/rutter.d.ts.map +1 -0
  28. package/dist/lib/rutter.js +585 -0
  29. package/dist/lib/rutter.js.map +1 -0
  30. package/dist/{src/lib → lib}/security.d.ts +2 -72
  31. package/dist/lib/security.d.ts.map +1 -0
  32. package/dist/lib/security.js +390 -0
  33. package/dist/lib/security.js.map +1 -0
  34. package/dist/lib/umbrella.d.ts.map +1 -0
  35. package/dist/lib/umbrella.js.map +1 -0
  36. package/dist/{src/lib → lib}/umbrellaRutter.d.ts +1 -1
  37. package/dist/lib/umbrellaRutter.d.ts.map +1 -0
  38. package/dist/lib/umbrellaRutter.js.map +1 -0
  39. package/dist/{src/lib → lib}/utils/helmHelpers.d.ts +2 -12
  40. package/dist/lib/utils/helmHelpers.d.ts.map +1 -0
  41. package/dist/{src/lib → lib}/utils/helmHelpers.js +2 -46
  42. package/dist/lib/utils/helmHelpers.js.map +1 -0
  43. package/package.json +3 -4
  44. package/dist/src/cli.d.ts.map +0 -1
  45. package/dist/src/cli.js.map +0 -1
  46. package/dist/src/index.d.ts +0 -23
  47. package/dist/src/index.d.ts.map +0 -1
  48. package/dist/src/index.js +0 -15
  49. package/dist/src/index.js.map +0 -1
  50. package/dist/src/lib/constants.d.ts +0 -142
  51. package/dist/src/lib/constants.d.ts.map +0 -1
  52. package/dist/src/lib/constants.js +0 -167
  53. package/dist/src/lib/constants.js.map +0 -1
  54. package/dist/src/lib/helm.d.ts.map +0 -1
  55. package/dist/src/lib/helm.js.map +0 -1
  56. package/dist/src/lib/helmChartWriter.d.ts.map +0 -1
  57. package/dist/src/lib/helmChartWriter.js.map +0 -1
  58. package/dist/src/lib/resources/autoscaling/autoscalingResources.d.ts +0 -248
  59. package/dist/src/lib/resources/autoscaling/autoscalingResources.d.ts.map +0 -1
  60. package/dist/src/lib/resources/autoscaling/autoscalingResources.js +0 -81
  61. package/dist/src/lib/resources/autoscaling/autoscalingResources.js.map +0 -1
  62. package/dist/src/lib/resources/baseResourceProvider.d.ts.map +0 -1
  63. package/dist/src/lib/resources/baseResourceProvider.js.map +0 -1
  64. package/dist/src/lib/resources/cloud/aws/awsResources.d.ts.map +0 -1
  65. package/dist/src/lib/resources/cloud/aws/awsResources.js.map +0 -1
  66. package/dist/src/lib/resources/cloud/aws/karpenterResources.d.ts.map +0 -1
  67. package/dist/src/lib/resources/cloud/aws/karpenterResources.js.map +0 -1
  68. package/dist/src/lib/resources/cloud/azure/azureResources.d.ts +0 -169
  69. package/dist/src/lib/resources/cloud/azure/azureResources.d.ts.map +0 -1
  70. package/dist/src/lib/resources/cloud/azure/azureResources.js +0 -218
  71. package/dist/src/lib/resources/cloud/azure/azureResources.js.map +0 -1
  72. package/dist/src/lib/resources/cloud/gcp/gcpResources.d.ts +0 -164
  73. package/dist/src/lib/resources/cloud/gcp/gcpResources.d.ts.map +0 -1
  74. package/dist/src/lib/resources/cloud/gcp/gcpResources.js +0 -192
  75. package/dist/src/lib/resources/cloud/gcp/gcpResources.js.map +0 -1
  76. package/dist/src/lib/resources/core/coreResources.d.ts +0 -790
  77. package/dist/src/lib/resources/core/coreResources.d.ts.map +0 -1
  78. package/dist/src/lib/resources/core/coreResources.js +0 -1115
  79. package/dist/src/lib/resources/core/coreResources.js.map +0 -1
  80. package/dist/src/lib/resources/core/storageResources.d.ts +0 -133
  81. package/dist/src/lib/resources/core/storageResources.d.ts.map +0 -1
  82. package/dist/src/lib/resources/core/storageResources.js +0 -120
  83. package/dist/src/lib/resources/core/storageResources.js.map +0 -1
  84. package/dist/src/lib/resources/network/networkResources.d.ts +0 -515
  85. package/dist/src/lib/resources/network/networkResources.d.ts.map +0 -1
  86. package/dist/src/lib/resources/network/networkResources.js +0 -784
  87. package/dist/src/lib/resources/network/networkResources.js.map +0 -1
  88. package/dist/src/lib/resources/security/encryption.d.ts +0 -290
  89. package/dist/src/lib/resources/security/encryption.d.ts.map +0 -1
  90. package/dist/src/lib/resources/security/encryption.js +0 -295
  91. package/dist/src/lib/resources/security/encryption.js.map +0 -1
  92. package/dist/src/lib/resources/security/index.d.ts +0 -6
  93. package/dist/src/lib/resources/security/index.d.ts.map +0 -1
  94. package/dist/src/lib/resources/security/index.js +0 -6
  95. package/dist/src/lib/resources/security/index.js.map +0 -1
  96. package/dist/src/lib/resources/validation/validationResources.d.ts +0 -26
  97. package/dist/src/lib/resources/validation/validationResources.d.ts.map +0 -1
  98. package/dist/src/lib/resources/validation/validationResources.js +0 -33
  99. package/dist/src/lib/resources/validation/validationResources.js.map +0 -1
  100. package/dist/src/lib/rutter.d.ts +0 -1106
  101. package/dist/src/lib/rutter.d.ts.map +0 -1
  102. package/dist/src/lib/rutter.js +0 -1295
  103. package/dist/src/lib/rutter.js.map +0 -1
  104. package/dist/src/lib/security.d.ts.map +0 -1
  105. package/dist/src/lib/security.js +0 -569
  106. package/dist/src/lib/security.js.map +0 -1
  107. package/dist/src/lib/umbrella.d.ts.map +0 -1
  108. package/dist/src/lib/umbrella.js.map +0 -1
  109. package/dist/src/lib/umbrellaRutter.d.ts.map +0 -1
  110. package/dist/src/lib/umbrellaRutter.js.map +0 -1
  111. package/dist/src/lib/utils/helmHelpers.d.ts.map +0 -1
  112. package/dist/src/lib/utils/helmHelpers.js.map +0 -1
  113. package/dist/src/lib/utils/podTemplates.d.ts +0 -192
  114. package/dist/src/lib/utils/podTemplates.d.ts.map +0 -1
  115. package/dist/src/lib/utils/podTemplates.js +0 -331
  116. package/dist/src/lib/utils/podTemplates.js.map +0 -1
  117. package/dist/src/lib/utils/resourceNaming.d.ts +0 -57
  118. package/dist/src/lib/utils/resourceNaming.d.ts.map +0 -1
  119. package/dist/src/lib/utils/resourceNaming.js +0 -82
  120. package/dist/src/lib/utils/resourceNaming.js.map +0 -1
  121. /package/dist/{src/cli.d.ts → cli.d.ts} +0 -0
  122. /package/dist/{src/lib → lib}/helmChartWriter.d.ts +0 -0
  123. /package/dist/{src/lib → lib}/resources/baseResourceProvider.js +0 -0
  124. /package/dist/{src/lib → lib}/resources/cloud/aws/karpenterResources.d.ts +0 -0
  125. /package/dist/{src/lib → lib}/resources/cloud/aws/karpenterResources.js +0 -0
  126. /package/dist/{src/lib → lib}/umbrella.d.ts +0 -0
  127. /package/dist/{src/lib → lib}/umbrella.js +0 -0
  128. /package/dist/{src/lib → lib}/umbrellaRutter.js +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"networkResources.js","sourceRoot":"","sources":["../../../../../src/lib/resources/network/networkResources.ts"],"names":[],"mappings":"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"}
@@ -1,290 +0,0 @@
1
- /**
2
- * @fileoverview Certificate management and encryption resources for Kubernetes
3
- * @since 2.9.0
4
- */
5
- import type { ApiObject } from 'cdk8s';
6
- import { BaseResourceProvider } from '../baseResourceProvider.js';
7
- /**
8
- * ACME challenge types for Let's Encrypt
9
- * @since 2.9.0
10
- */
11
- export type ACMEChallengeType = 'http01' | 'dns01';
12
- /**
13
- * ACME HTTP01 challenge configuration
14
- * @since 2.9.0
15
- */
16
- export interface ACMEHTTP01Config {
17
- /** Ingress class to use for HTTP01 challenges */
18
- ingressClass?: string;
19
- /** Service type for HTTP01 challenges */
20
- serviceType?: 'ClusterIP' | 'NodePort' | 'LoadBalancer';
21
- }
22
- /**
23
- * Route53 DNS provider configuration
24
- * @since 2.9.0
25
- */
26
- export interface Route53Config {
27
- /** AWS region for Route53 */
28
- region: string;
29
- /** Hosted zone ID (must start with 'Z') */
30
- hostedZoneID?: string;
31
- /** IAM role ARN (must be a valid ARN format) */
32
- role?: string;
33
- /** Access key ID secret reference */
34
- accessKeyID?: {
35
- name: string;
36
- key: string;
37
- };
38
- /** Secret access key secret reference */
39
- secretAccessKey?: {
40
- name: string;
41
- key: string;
42
- };
43
- }
44
- /**
45
- * Validates Route53 configuration
46
- * @param config - Route53 configuration to validate
47
- * @throws Error if validation fails
48
- * @since 2.9.0
49
- */
50
- export declare function validateRoute53Config(config: Route53Config): void;
51
- /**
52
- * ACME DNS01 challenge configuration
53
- * @since 2.9.0
54
- */
55
- export interface ACMEDNS01Config {
56
- /** DNS provider configuration */
57
- route53?: Route53Config;
58
- /** CloudFlare DNS provider */
59
- cloudflare?: {
60
- /** API token secret reference */
61
- apiToken?: {
62
- name: string;
63
- key: string;
64
- };
65
- /** API key secret reference */
66
- apiKey?: {
67
- name: string;
68
- key: string;
69
- };
70
- /** Email for CloudFlare account */
71
- email?: string;
72
- };
73
- }
74
- /**
75
- * ACME issuer configuration
76
- * @since 2.9.0
77
- */
78
- export interface ACMEIssuerConfig {
79
- /** ACME server URL */
80
- server: string;
81
- /** Email for ACME registration */
82
- email: string;
83
- /** Private key secret name */
84
- privateKeySecretRef: string;
85
- /** Challenge configuration */
86
- solvers: Array<{
87
- /** Challenge type */
88
- http01?: ACMEHTTP01Config;
89
- dns01?: ACMEDNS01Config;
90
- /** Selector for domains */
91
- selector?: {
92
- dnsNames?: string[];
93
- dnsZones?: string[];
94
- };
95
- }>;
96
- }
97
- /**
98
- * Certificate specification
99
- * @since 2.9.0
100
- */
101
- export interface CertificateSpec {
102
- /** Certificate name */
103
- name: string;
104
- /** Secret name to store the certificate */
105
- secretName: string;
106
- /** Issuer reference */
107
- issuerRef: {
108
- name: string;
109
- kind?: 'Issuer' | 'ClusterIssuer';
110
- group?: string;
111
- };
112
- /** DNS names for the certificate */
113
- dnsNames: string[];
114
- /** Certificate duration */
115
- duration?: string;
116
- /** Certificate renewal before expiry */
117
- renewBefore?: string;
118
- /** Subject configuration */
119
- subject?: {
120
- organizations?: string[];
121
- countries?: string[];
122
- organizationalUnits?: string[];
123
- localities?: string[];
124
- provinces?: string[];
125
- };
126
- /** Key algorithm */
127
- keyAlgorithm?: 'rsa' | 'ecdsa';
128
- /** Key size */
129
- keySize?: number;
130
- /** Resource labels */
131
- labels?: Record<string, string>;
132
- /** Resource annotations */
133
- annotations?: Record<string, string>;
134
- }
135
- /**
136
- * ClusterIssuer specification
137
- * @since 2.9.0
138
- */
139
- export interface ClusterIssuerSpec {
140
- /** Issuer name */
141
- name: string;
142
- /** ACME configuration */
143
- acme?: ACMEIssuerConfig;
144
- /** CA configuration */
145
- ca?: {
146
- secretName: string;
147
- };
148
- /** Vault configuration */
149
- vault?: {
150
- server: string;
151
- path: string;
152
- auth: {
153
- kubernetes?: {
154
- mountPath: string;
155
- role: string;
156
- secretRef: {
157
- name: string;
158
- key: string;
159
- };
160
- };
161
- };
162
- };
163
- /** Resource labels */
164
- labels?: Record<string, string>;
165
- /** Resource annotations */
166
- annotations?: Record<string, string>;
167
- }
168
- /**
169
- * Encryption and certificate management resources provider
170
- * @extends BaseResourceProvider
171
- * @since 2.9.0
172
- */
173
- export declare class EncryptionResources extends BaseResourceProvider {
174
- private static readonly CERT_MANAGER_API_VERSION;
175
- private static readonly LETSENCRYPT_STAGING_SERVER;
176
- private static readonly LETSENCRYPT_PRODUCTION_SERVER;
177
- /**
178
- * Creates a Let's Encrypt ClusterIssuer with HTTP01 challenge
179
- * @param name - Issuer name
180
- * @param email - Email for ACME registration
181
- * @param ingressClass - Ingress class for HTTP01 challenges
182
- * @param staging - Use staging server (default: false)
183
- * @param labels - Optional labels
184
- * @param annotations - Optional annotations
185
- * @returns Created ClusterIssuer ApiObject
186
- * @example
187
- * ```typescript
188
- * // Production Let's Encrypt issuer with NGINX
189
- * encryptionResources.addLetsEncryptHTTP01ClusterIssuer(
190
- * 'letsencrypt-prod',
191
- * 'admin@example.com',
192
- * 'nginx'
193
- * );
194
- * ```
195
- * @since 2.9.0
196
- */
197
- addLetsEncryptHTTP01ClusterIssuer(name: string, email: string, ingressClass?: string, staging?: boolean, labels?: Record<string, string>, annotations?: Record<string, string>): ApiObject;
198
- /**
199
- * Creates a Let's Encrypt ClusterIssuer with DNS01 challenge for Route53
200
- * @param name - Issuer name
201
- * @param email - Email for ACME registration
202
- * @param region - AWS region
203
- * @param hostedZoneID - Route53 hosted zone ID
204
- * @param role - IAM role ARN for Route53 access
205
- * @param staging - Use staging server (default: false)
206
- * @param labels - Optional labels
207
- * @param annotations - Optional annotations
208
- * @returns Created ClusterIssuer ApiObject
209
- * @example
210
- * ```typescript
211
- * // Production Let's Encrypt issuer with Route53 DNS01
212
- * encryptionResources.addLetsEncryptRoute53ClusterIssuer(
213
- * 'letsencrypt-dns-prod',
214
- * 'admin@example.com',
215
- * 'us-east-1',
216
- * 'Z1234567890ABC',
217
- * 'arn:aws:iam::123456789012:role/cert-manager-route53'
218
- * );
219
- * ```
220
- * @since 2.9.0
221
- */
222
- addLetsEncryptRoute53ClusterIssuer(name: string, email: string, region: string, hostedZoneID?: string, role?: string, staging?: boolean, labels?: Record<string, string>, annotations?: Record<string, string>): ApiObject;
223
- /**
224
- * Creates a ClusterIssuer resource
225
- * @param spec - ClusterIssuer specification
226
- * @returns Created ClusterIssuer ApiObject
227
- * @since 2.9.0
228
- */
229
- addClusterIssuer(spec: ClusterIssuerSpec): ApiObject;
230
- /**
231
- * Build ACME configuration
232
- * @private
233
- */
234
- private buildACMEConfig;
235
- /**
236
- * Build solver configuration
237
- * @private
238
- */
239
- private buildSolverConfig;
240
- /**
241
- * Build DNS01 configuration
242
- * @private
243
- */
244
- private buildDNS01Config;
245
- /**
246
- * Creates a Certificate resource
247
- * @param spec - Certificate specification
248
- * @returns Created Certificate ApiObject
249
- * @example
250
- * ```typescript
251
- * // Create a certificate for multiple domains
252
- * encryptionResources.addCertificate({
253
- * name: 'example-tls',
254
- * secretName: 'example-tls-secret',
255
- * issuerRef: {
256
- * name: 'letsencrypt-prod',
257
- * kind: 'ClusterIssuer'
258
- * },
259
- * dnsNames: ['example.com', 'www.example.com']
260
- * });
261
- * ```
262
- * @since 2.9.0
263
- */
264
- addCertificate(spec: CertificateSpec): ApiObject;
265
- /**
266
- * Creates a Certificate with automatic TLS secret for Ingress
267
- * @param name - Certificate name
268
- * @param secretName - Secret name for TLS certificate
269
- * @param issuerName - ClusterIssuer name
270
- * @param dnsNames - DNS names for the certificate
271
- * @param duration - Certificate duration (default: 2160h = 90 days)
272
- * @param renewBefore - Renew before expiry (default: 720h = 30 days)
273
- * @param labels - Optional labels
274
- * @param annotations - Optional annotations
275
- * @returns Created Certificate ApiObject
276
- * @example
277
- * ```typescript
278
- * // Create a certificate for Ingress TLS
279
- * encryptionResources.addIngressCertificate(
280
- * 'web-tls',
281
- * 'web-tls-secret',
282
- * 'letsencrypt-prod',
283
- * ['example.com', 'www.example.com']
284
- * );
285
- * ```
286
- * @since 2.9.0
287
- */
288
- addIngressCertificate(name: string, secretName: string, issuerName: string, dnsNames: string[], duration?: string, renewBefore?: string, labels?: Record<string, string>, annotations?: Record<string, string>): ApiObject;
289
- }
290
- //# sourceMappingURL=encryption.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"encryption.d.ts","sourceRoot":"","sources":["../../../../../src/lib/resources/security/encryption.ts"],"names":[],"mappings":"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"}
@@ -1,295 +0,0 @@
1
- /**
2
- * @fileoverview Certificate management and encryption resources for Kubernetes
3
- * @since 2.9.0
4
- */
5
- import { BaseResourceProvider } from '../baseResourceProvider.js';
6
- /**
7
- * Validates Route53 configuration
8
- * @param config - Route53 configuration to validate
9
- * @throws Error if validation fails
10
- * @since 2.9.0
11
- */
12
- export function validateRoute53Config(config) {
13
- if (config.region && !/^[a-z]{2}-[a-z]+-\d{1}$/.test(config.region)) {
14
- throw new Error('Invalid AWS region format');
15
- }
16
- if (config.hostedZoneID && !/^Z[A-Z0-9]+$/.test(config.hostedZoneID)) {
17
- throw new Error('Invalid hosted zone ID format');
18
- }
19
- if (config.role && !/^arn:aws:iam::\d{12}:role\/[\w+=,.@-]+$/.test(config.role)) {
20
- throw new Error('Invalid IAM role ARN format');
21
- }
22
- }
23
- /**
24
- * Encryption and certificate management resources provider
25
- * @extends BaseResourceProvider
26
- * @since 2.9.0
27
- */
28
- export class EncryptionResources extends BaseResourceProvider {
29
- /**
30
- * Creates a Let's Encrypt ClusterIssuer with HTTP01 challenge
31
- * @param name - Issuer name
32
- * @param email - Email for ACME registration
33
- * @param ingressClass - Ingress class for HTTP01 challenges
34
- * @param staging - Use staging server (default: false)
35
- * @param labels - Optional labels
36
- * @param annotations - Optional annotations
37
- * @returns Created ClusterIssuer ApiObject
38
- * @example
39
- * ```typescript
40
- * // Production Let's Encrypt issuer with NGINX
41
- * encryptionResources.addLetsEncryptHTTP01ClusterIssuer(
42
- * 'letsencrypt-prod',
43
- * 'admin@example.com',
44
- * 'nginx'
45
- * );
46
- * ```
47
- * @since 2.9.0
48
- */
49
- addLetsEncryptHTTP01ClusterIssuer(name, email, ingressClass = 'nginx', staging = false, labels, annotations) {
50
- const server = staging
51
- ? EncryptionResources.LETSENCRYPT_STAGING_SERVER
52
- : EncryptionResources.LETSENCRYPT_PRODUCTION_SERVER;
53
- return this.addClusterIssuer({
54
- name,
55
- acme: {
56
- server,
57
- email,
58
- privateKeySecretRef: `${name}-private-key`,
59
- solvers: [
60
- {
61
- http01: {
62
- ingressClass,
63
- },
64
- },
65
- ],
66
- },
67
- ...(labels && { labels }),
68
- ...(annotations && { annotations }),
69
- });
70
- }
71
- /**
72
- * Creates a Let's Encrypt ClusterIssuer with DNS01 challenge for Route53
73
- * @param name - Issuer name
74
- * @param email - Email for ACME registration
75
- * @param region - AWS region
76
- * @param hostedZoneID - Route53 hosted zone ID
77
- * @param role - IAM role ARN for Route53 access
78
- * @param staging - Use staging server (default: false)
79
- * @param labels - Optional labels
80
- * @param annotations - Optional annotations
81
- * @returns Created ClusterIssuer ApiObject
82
- * @example
83
- * ```typescript
84
- * // Production Let's Encrypt issuer with Route53 DNS01
85
- * encryptionResources.addLetsEncryptRoute53ClusterIssuer(
86
- * 'letsencrypt-dns-prod',
87
- * 'admin@example.com',
88
- * 'us-east-1',
89
- * 'Z1234567890ABC',
90
- * 'arn:aws:iam::123456789012:role/cert-manager-route53'
91
- * );
92
- * ```
93
- * @since 2.9.0
94
- */
95
- addLetsEncryptRoute53ClusterIssuer(name, email, region, hostedZoneID, role, staging = false, labels, annotations) {
96
- const server = staging
97
- ? EncryptionResources.LETSENCRYPT_STAGING_SERVER
98
- : EncryptionResources.LETSENCRYPT_PRODUCTION_SERVER;
99
- const route53Config = {
100
- region,
101
- ...(hostedZoneID && { hostedZoneID }),
102
- ...(role && { role }),
103
- };
104
- // Validate configuration
105
- validateRoute53Config(route53Config);
106
- return this.addClusterIssuer({
107
- name,
108
- acme: {
109
- server,
110
- email,
111
- privateKeySecretRef: `${name}-private-key`,
112
- solvers: [
113
- {
114
- dns01: {
115
- route53: route53Config,
116
- },
117
- },
118
- ],
119
- },
120
- ...(labels && { labels }),
121
- ...(annotations && { annotations }),
122
- });
123
- }
124
- /**
125
- * Creates a ClusterIssuer resource
126
- * @param spec - ClusterIssuer specification
127
- * @returns Created ClusterIssuer ApiObject
128
- * @since 2.9.0
129
- */
130
- addClusterIssuer(spec) {
131
- const issuerSpec = {};
132
- if (spec.acme) {
133
- issuerSpec['acme'] = this.buildACMEConfig(spec.acme);
134
- }
135
- if (spec.ca) {
136
- issuerSpec['ca'] = {
137
- secretName: spec.ca.secretName,
138
- };
139
- }
140
- if (spec.vault) {
141
- issuerSpec['vault'] = spec.vault;
142
- }
143
- return this.createApiObject(spec.name, EncryptionResources.CERT_MANAGER_API_VERSION, 'ClusterIssuer', issuerSpec, spec.labels, spec.annotations);
144
- }
145
- /**
146
- * Build ACME configuration
147
- * @private
148
- */
149
- buildACMEConfig(acme) {
150
- return {
151
- server: acme.server,
152
- email: acme.email,
153
- privateKeySecretRef: {
154
- name: acme.privateKeySecretRef,
155
- },
156
- solvers: acme.solvers.map((solver) => this.buildSolverConfig(solver)),
157
- };
158
- }
159
- /**
160
- * Build solver configuration
161
- * @private
162
- */
163
- buildSolverConfig(solver) {
164
- const solverConfig = {};
165
- if (solver.http01) {
166
- solverConfig['http01'] = {
167
- ingress: {
168
- ...(solver.http01.ingressClass && { class: solver.http01.ingressClass }),
169
- ...(solver.http01.serviceType && { serviceType: solver.http01.serviceType }),
170
- },
171
- };
172
- }
173
- if (solver.dns01) {
174
- solverConfig['dns01'] = this.buildDNS01Config(solver.dns01);
175
- }
176
- if (solver.selector) {
177
- solverConfig['selector'] = solver.selector;
178
- }
179
- return solverConfig;
180
- }
181
- /**
182
- * Build DNS01 configuration
183
- * @private
184
- */
185
- buildDNS01Config(dns01) {
186
- const dns01Config = {};
187
- if (dns01.route53) {
188
- dns01Config['route53'] = {
189
- region: dns01.route53.region,
190
- ...(dns01.route53.hostedZoneID && { hostedZoneID: dns01.route53.hostedZoneID }),
191
- ...(dns01.route53.role && { role: dns01.route53.role }),
192
- ...(dns01.route53.accessKeyID && { accessKeyID: dns01.route53.accessKeyID }),
193
- ...(dns01.route53.secretAccessKey && { secretAccessKey: dns01.route53.secretAccessKey }),
194
- };
195
- }
196
- if (dns01.cloudflare) {
197
- dns01Config['cloudflare'] = {
198
- ...(dns01.cloudflare.email && { email: dns01.cloudflare.email }),
199
- ...(dns01.cloudflare.apiToken && { apiTokenSecretRef: dns01.cloudflare.apiToken }),
200
- ...(dns01.cloudflare.apiKey && { apiKeySecretRef: dns01.cloudflare.apiKey }),
201
- };
202
- }
203
- return dns01Config;
204
- }
205
- /**
206
- * Creates a Certificate resource
207
- * @param spec - Certificate specification
208
- * @returns Created Certificate ApiObject
209
- * @example
210
- * ```typescript
211
- * // Create a certificate for multiple domains
212
- * encryptionResources.addCertificate({
213
- * name: 'example-tls',
214
- * secretName: 'example-tls-secret',
215
- * issuerRef: {
216
- * name: 'letsencrypt-prod',
217
- * kind: 'ClusterIssuer'
218
- * },
219
- * dnsNames: ['example.com', 'www.example.com']
220
- * });
221
- * ```
222
- * @since 2.9.0
223
- */
224
- addCertificate(spec) {
225
- const certificateSpec = {
226
- secretName: spec.secretName,
227
- issuerRef: {
228
- name: spec.issuerRef.name,
229
- kind: spec.issuerRef.kind || 'ClusterIssuer',
230
- group: spec.issuerRef.group || 'cert-manager.io',
231
- },
232
- dnsNames: spec.dnsNames,
233
- };
234
- if (spec.duration) {
235
- certificateSpec['duration'] = spec.duration;
236
- }
237
- if (spec.renewBefore) {
238
- certificateSpec['renewBefore'] = spec.renewBefore;
239
- }
240
- if (spec.subject) {
241
- certificateSpec['subject'] = spec.subject;
242
- }
243
- if (spec.keyAlgorithm) {
244
- certificateSpec['keyAlgorithm'] = spec.keyAlgorithm;
245
- }
246
- if (spec.keySize) {
247
- certificateSpec['keySize'] = spec.keySize;
248
- }
249
- return this.createApiObject(spec.name, EncryptionResources.CERT_MANAGER_API_VERSION, 'Certificate', certificateSpec, spec.labels, spec.annotations);
250
- }
251
- /**
252
- * Creates a Certificate with automatic TLS secret for Ingress
253
- * @param name - Certificate name
254
- * @param secretName - Secret name for TLS certificate
255
- * @param issuerName - ClusterIssuer name
256
- * @param dnsNames - DNS names for the certificate
257
- * @param duration - Certificate duration (default: 2160h = 90 days)
258
- * @param renewBefore - Renew before expiry (default: 720h = 30 days)
259
- * @param labels - Optional labels
260
- * @param annotations - Optional annotations
261
- * @returns Created Certificate ApiObject
262
- * @example
263
- * ```typescript
264
- * // Create a certificate for Ingress TLS
265
- * encryptionResources.addIngressCertificate(
266
- * 'web-tls',
267
- * 'web-tls-secret',
268
- * 'letsencrypt-prod',
269
- * ['example.com', 'www.example.com']
270
- * );
271
- * ```
272
- * @since 2.9.0
273
- */
274
- addIngressCertificate(name, secretName, issuerName, dnsNames, duration = '2160h', renewBefore = '720h', labels, annotations) {
275
- return this.addCertificate({
276
- name,
277
- secretName,
278
- issuerRef: {
279
- name: issuerName,
280
- kind: 'ClusterIssuer',
281
- },
282
- dnsNames,
283
- duration,
284
- renewBefore,
285
- keyAlgorithm: 'rsa',
286
- keySize: 2048,
287
- ...(labels && { labels }),
288
- ...(annotations && { annotations }),
289
- });
290
- }
291
- }
292
- EncryptionResources.CERT_MANAGER_API_VERSION = 'cert-manager.io/v1';
293
- EncryptionResources.LETSENCRYPT_STAGING_SERVER = 'https://acme-staging-v02.api.letsencrypt.org/directory';
294
- EncryptionResources.LETSENCRYPT_PRODUCTION_SERVER = 'https://acme-v02.api.letsencrypt.org/directory';
295
- //# sourceMappingURL=encryption.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"encryption.js","sourceRoot":"","sources":["../../../../../src/lib/resources/security/encryption.ts"],"names":[],"mappings":"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"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @fileoverview Security resources exports
3
- * @since 2.9.0
4
- */
5
- export * from './encryption.js';
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/resources/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,iBAAiB,CAAC"}
@@ -1,6 +0,0 @@
1
- /**
2
- * @fileoverview Security resources exports
3
- * @since 2.9.0
4
- */
5
- export * from './encryption.js';
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/lib/resources/security/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,iBAAiB,CAAC"}