@swovohq/fuel 0.2.2-alpha.90 → 0.2.2-alpha.91

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 (95) hide show
  1. package/README.md +107 -107
  2. package/dist/bin/fuel.js +2 -2
  3. package/dist/cleanup/finalize.d.ts.map +1 -1
  4. package/dist/cleanup/finalize.js +11 -3
  5. package/dist/cleanup/finalize.js.map +1 -1
  6. package/dist/commands/config-verify.d.ts.map +1 -1
  7. package/dist/commands/config-verify.js.map +1 -1
  8. package/dist/commands/create-app.d.ts.map +1 -1
  9. package/dist/commands/create-app.js +6 -4
  10. package/dist/commands/create-app.js.map +1 -1
  11. package/dist/commands/infra-deploy.d.ts.map +1 -1
  12. package/dist/commands/infra-deploy.js +37 -20
  13. package/dist/commands/infra-deploy.js.map +1 -1
  14. package/dist/commands/infra-destroy.d.ts.map +1 -1
  15. package/dist/commands/infra-destroy.js +1 -1
  16. package/dist/commands/infra-destroy.js.map +1 -1
  17. package/dist/commands/infra-init.d.ts.map +1 -1
  18. package/dist/commands/infra-init.js +168 -67
  19. package/dist/commands/infra-init.js.map +1 -1
  20. package/dist/commands/infra-pull.d.ts.map +1 -1
  21. package/dist/commands/infra-pull.js +2 -1
  22. package/dist/commands/infra-pull.js.map +1 -1
  23. package/dist/commands/list-modules.d.ts.map +1 -1
  24. package/dist/commands/list-modules.js +10 -3
  25. package/dist/commands/list-modules.js.map +1 -1
  26. package/dist/engines/convention.d.ts.map +1 -1
  27. package/dist/engines/convention.js +2 -2
  28. package/dist/engines/convention.js.map +1 -1
  29. package/dist/engines/dependencies.d.ts.map +1 -1
  30. package/dist/engines/dependencies.js.map +1 -1
  31. package/dist/engines/monorepo.d.ts.map +1 -1
  32. package/dist/engines/monorepo.js.map +1 -1
  33. package/dist/engines/template-source.d.ts.map +1 -1
  34. package/dist/engines/template-source.js +3 -1
  35. package/dist/engines/template-source.js.map +1 -1
  36. package/dist/index.d.ts.map +1 -1
  37. package/dist/index.js.map +1 -1
  38. package/dist/infra/azure-defaults.js +8 -8
  39. package/dist/infra/azure-keyvault-client.d.ts.map +1 -1
  40. package/dist/infra/azure-keyvault-client.js.map +1 -1
  41. package/dist/infra/azure-rbac.d.ts.map +1 -1
  42. package/dist/infra/azure-rbac.js +3 -1
  43. package/dist/infra/azure-rbac.js.map +1 -1
  44. package/dist/infra/azure-state-storage.d.ts.map +1 -1
  45. package/dist/infra/azure-state-storage.js +9 -9
  46. package/dist/infra/azure-state-storage.js.map +1 -1
  47. package/dist/infra/config-loader.d.ts.map +1 -1
  48. package/dist/infra/config-loader.js.map +1 -1
  49. package/dist/infra/config-writer.js +1 -1
  50. package/dist/infra/credentials.d.ts.map +1 -1
  51. package/dist/infra/credentials.js.map +1 -1
  52. package/dist/infra/dependency-checker.d.ts.map +1 -1
  53. package/dist/infra/dependency-checker.js.map +1 -1
  54. package/dist/infra/deployment-detect.d.ts.map +1 -1
  55. package/dist/infra/deployment-detect.js.map +1 -1
  56. package/dist/infra/git-client.d.ts.map +1 -1
  57. package/dist/infra/git-client.js.map +1 -1
  58. package/dist/infra/github-client.d.ts.map +1 -1
  59. package/dist/infra/github-client.js +3 -3
  60. package/dist/infra/github-client.js.map +1 -1
  61. package/dist/infra/github-secrets-client.d.ts.map +1 -1
  62. package/dist/infra/github-secrets-client.js +2 -2
  63. package/dist/infra/github-secrets-client.js.map +1 -1
  64. package/dist/infra/github-token-link.d.ts.map +1 -1
  65. package/dist/infra/github-token-link.js +6 -2
  66. package/dist/infra/github-token-link.js.map +1 -1
  67. package/dist/infra/orchestrator.d.ts.map +1 -1
  68. package/dist/infra/orchestrator.js +20 -15
  69. package/dist/infra/orchestrator.js.map +1 -1
  70. package/dist/infra/port-utils.d.ts.map +1 -1
  71. package/dist/infra/port-utils.js.map +1 -1
  72. package/dist/infra/preflight.d.ts.map +1 -1
  73. package/dist/infra/preflight.js +9 -3
  74. package/dist/infra/preflight.js.map +1 -1
  75. package/dist/infra/s3-state-bucket.d.ts.map +1 -1
  76. package/dist/infra/s3-state-bucket.js +8 -4
  77. package/dist/infra/s3-state-bucket.js.map +1 -1
  78. package/dist/infra/secrets-manager-client.d.ts.map +1 -1
  79. package/dist/infra/secrets-manager-client.js +8 -5
  80. package/dist/infra/secrets-manager-client.js.map +1 -1
  81. package/dist/infra/subprocess.js +1 -1
  82. package/dist/infra/template-engine.d.ts.map +1 -1
  83. package/dist/infra/template-engine.js +17 -5
  84. package/dist/infra/template-engine.js.map +1 -1
  85. package/dist/infra/tofu-runner.d.ts.map +1 -1
  86. package/dist/infra/tofu-runner.js +8 -11
  87. package/dist/infra/tofu-runner.js.map +1 -1
  88. package/dist/infra/types.d.ts +1 -1
  89. package/dist/infra/types.d.ts.map +1 -1
  90. package/dist/infra/types.js +299 -91
  91. package/dist/infra/types.js.map +1 -1
  92. package/dist/infra-templates/TODO-azure-prod.md +16 -8
  93. package/dist/infra-templates/templates/azure/MANUAL_DEPLOY.md +1 -1
  94. package/dist/infra-templates/templates/ecs/README.md +92 -82
  95. package/package.json +1 -1
@@ -20,104 +20,233 @@ const AZURE_APP_NAME_PATTERN = /^[a-z][a-z0-9]*(-[a-z0-9]+)*$/;
20
20
  const AZURE_APP_NAME_MESSAGE = 'must start with a letter, contain only lowercase letters, numbers, and hyphens, end with an alphanumeric character, and not contain consecutive hyphens';
21
21
  const AZURE_APP_NAME_MIN_LENGTH = 2;
22
22
  const AZURE_APP_NAME_MAX_LENGTH = 32;
23
- const WorkerSchema = zod_1.z.object({
23
+ const WorkerSchema = zod_1.z
24
+ .object({
24
25
  name: zod_1.z
25
26
  .string()
26
27
  .min(1)
27
28
  .max(APP_NAME_MAX_LENGTH, `worker name must be ${APP_NAME_MAX_LENGTH} characters or fewer (AWS resource naming limit)`)
28
29
  .regex(AWS_NAME_PATTERN, `worker name ${AWS_NAME_MESSAGE}`)
29
30
  .describe('Worker name. Used as the ECS service name.'),
30
- dockerfile: zod_1.z.string().min(1).describe("Path to the worker's Dockerfile relative to the project root."),
31
- }).passthrough().meta({ id: 'worker' });
31
+ dockerfile: zod_1.z
32
+ .string()
33
+ .min(1)
34
+ .describe("Path to the worker's Dockerfile relative to the project root.")
35
+ })
36
+ .passthrough()
37
+ .meta({ id: 'worker' });
32
38
  exports.WorkerSchema = WorkerSchema;
33
- exports.AppSchema = zod_1.z.object({
39
+ exports.AppSchema = zod_1.z
40
+ .object({
34
41
  name: zod_1.z
35
42
  .string()
36
43
  .min(1)
37
44
  .max(APP_NAME_MAX_LENGTH, `app name must be ${APP_NAME_MAX_LENGTH} characters or fewer (AWS ALB target group name limit)`)
38
45
  .regex(AWS_NAME_PATTERN, `app name ${AWS_NAME_MESSAGE}`),
39
- technology: zod_1.z.string().min(1).describe("Application role/framework. 'nest' and 'react' get framework-specific env var injection (see docs); any other value deploys as a plain container with no extra env vars — pass everything explicitly via variables/build_env."),
46
+ technology: zod_1.z
47
+ .string()
48
+ .min(1)
49
+ .describe("Application role/framework. 'nest' and 'react' get framework-specific env var injection (see docs); any other value deploys as a plain container with no extra env vars — pass everything explicitly via variables/build_env."),
40
50
  dockerfile: zod_1.z.string().min(1),
41
51
  health_check_path: zod_1.z.string().min(1),
42
52
  domain: zod_1.z.string().min(1),
43
53
  port: zod_1.z.number().int().positive(),
44
54
  branch: zod_1.z.string().default('main'),
45
55
  template_repo_branch: zod_1.z.string().default('main'),
46
- postgres: zod_1.z.boolean().optional().default(false).describe('Provision an RDS PostgreSQL instance for this app.'),
47
- redis: zod_1.z.boolean().optional().default(false).describe('Provision an ElastiCache Redis instance for this app.'),
56
+ postgres: zod_1.z
57
+ .boolean()
58
+ .optional()
59
+ .default(false)
60
+ .describe('Provision an RDS PostgreSQL instance for this app.'),
61
+ redis: zod_1.z
62
+ .boolean()
63
+ .optional()
64
+ .default(false)
65
+ .describe('Provision an ElastiCache Redis instance for this app.'),
48
66
  variables: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional().default({}),
49
67
  build_env: zod_1.z.record(zod_1.z.string(), zod_1.z.string()).optional().default({}),
50
68
  workers: zod_1.z.array(WorkerSchema).optional().default([]),
51
- cpu_units: zod_1.z.number().int().positive().optional().default(1024).describe('ECS task CPU units (1024 = 1 vCPU).'),
52
- memory_units: zod_1.z.number().int().positive().optional().default(2048).describe('ECS task memory in MB.'),
53
- db_instance_type: zod_1.z.string().optional().describe('RDS instance type, e.g. db.t3.small. Only used when postgres is true.'),
54
- db_allocated_storage: zod_1.z.number().int().positive().optional().describe('RDS allocated storage in GB. Only used when postgres is true.'),
55
- redis_instance_type: zod_1.z.string().optional().describe('ElastiCache node type, e.g. cache.t3.small. Only used when redis is true.'),
56
- }).passthrough().meta({ id: 'ecsApp' });
57
- exports.EcsInfraConfigSchema = zod_1.z.object({
69
+ cpu_units: zod_1.z
70
+ .number()
71
+ .int()
72
+ .positive()
73
+ .optional()
74
+ .default(1024)
75
+ .describe('ECS task CPU units (1024 = 1 vCPU).'),
76
+ memory_units: zod_1.z
77
+ .number()
78
+ .int()
79
+ .positive()
80
+ .optional()
81
+ .default(2048)
82
+ .describe('ECS task memory in MB.'),
83
+ db_instance_type: zod_1.z
84
+ .string()
85
+ .optional()
86
+ .describe('RDS instance type, e.g. db.t3.small. Only used when postgres is true.'),
87
+ db_allocated_storage: zod_1.z
88
+ .number()
89
+ .int()
90
+ .positive()
91
+ .optional()
92
+ .describe('RDS allocated storage in GB. Only used when postgres is true.'),
93
+ redis_instance_type: zod_1.z
94
+ .string()
95
+ .optional()
96
+ .describe('ElastiCache node type, e.g. cache.t3.small. Only used when redis is true.')
97
+ })
98
+ .passthrough()
99
+ .meta({ id: 'ecsApp' });
100
+ exports.EcsInfraConfigSchema = zod_1.z
101
+ .object({
58
102
  name: zod_1.z
59
103
  .string()
60
104
  .min(1)
61
105
  .max(PROJECT_NAME_MAX_LENGTH, `name must be ${PROJECT_NAME_MAX_LENGTH} characters or fewer — AWS caps the "<name>-TargetGroup" load balancer resource name at 32 characters`)
62
106
  .regex(AWS_NAME_PATTERN, `name ${AWS_NAME_MESSAGE}`),
63
107
  slack_webhook_url: zod_1.z.string().optional(),
64
- github_repo_name: zod_1.z.string().optional().describe('Name of the GitHub repository to create/use. Defaults to "${name}-monorepo". Set this ' +
108
+ github_repo_name: zod_1.z
109
+ .string()
110
+ .optional()
111
+ .describe('Name of the GitHub repository to create/use. Defaults to "${name}-monorepo". Set this ' +
65
112
  'explicitly when this fuel.yml should target a repo already used by another environment ' +
66
- "(e.g. a separate prod fuel.yml with its own `name` pointing at the same repo as dev)."),
113
+ '(e.g. a separate prod fuel.yml with its own `name` pointing at the same repo as dev).'),
67
114
  deployment: zod_1.z.literal('ecs'),
68
- ssl: zod_1.z.string().min(1).describe('ACM certificate ARN attached to the ALB HTTPS listener, e.g. arn:aws:acm:us-east-1:ACCOUNT_ID:certificate/CERTIFICATE_ID.'),
69
- apps: zod_1.z.array(exports.AppSchema).min(1),
70
- }).passthrough().meta({ id: 'ecsConfig' }).superRefine((config, ctx) => {
115
+ ssl: zod_1.z
116
+ .string()
117
+ .min(1)
118
+ .describe('ACM certificate ARN attached to the ALB HTTPS listener, e.g. arn:aws:acm:us-east-1:ACCOUNT_ID:certificate/CERTIFICATE_ID.'),
119
+ apps: zod_1.z.array(exports.AppSchema).min(1)
120
+ })
121
+ .passthrough()
122
+ .meta({ id: 'ecsConfig' })
123
+ .superRefine((config, ctx) => {
71
124
  const names = config.apps.map((app) => app.name);
72
- const duplicates = [...new Set(names.filter((name, i) => names.indexOf(name) !== i))];
125
+ const duplicates = [
126
+ ...new Set(names.filter((name, i) => names.indexOf(name) !== i))
127
+ ];
73
128
  if (duplicates.length > 0) {
74
129
  ctx.addIssue({
75
130
  code: 'custom',
76
131
  message: `app.name must be unique — duplicate: ${duplicates.join(', ')}`,
77
- path: ['apps'],
132
+ path: ['apps']
78
133
  });
79
134
  }
80
135
  });
81
136
  // --- Azure ---
82
- const AzureDatabaseSchema = zod_1.z.object({
137
+ const AzureDatabaseSchema = zod_1.z
138
+ .object({
83
139
  enabled: zod_1.z.boolean().optional().default(false),
84
- engine: zod_1.z.enum(['mssql', 'postgres']).optional().default(azure_defaults_1.AZURE_DEFAULTS.database.engine).describe("Database engine: 'mssql' provisions Azure SQL Database, 'postgres' provisions Azure Database for PostgreSQL Flexible Server."),
85
- sku_name: zod_1.z.string().optional().describe('SKU name — e.g. GP_S_Gen5_4 for mssql, GP_Standard_D4s_v3 for postgres.'),
86
- storage_account_type: zod_1.z.enum(['Local', 'Zone', 'Geo', 'GeoZone']).optional().default(azure_defaults_1.AZURE_DEFAULTS.database.storageAccountType).describe('Backup storage redundancy (mssql only).'),
87
- pitr_retention_days: zod_1.z.number().int().min(1).max(35).optional().default(azure_defaults_1.AZURE_DEFAULTS.database.pitrRetentionDays).describe('Point-in-time restore retention in days (mssql only).'),
88
- ltr_weekly_retention: zod_1.z.string().optional().default(azure_defaults_1.AZURE_DEFAULTS.database.ltrWeeklyRetention).describe('Long-term retention ISO 8601 duration, e.g. P21W (mssql only).'),
89
- allocated_storage_mb: zod_1.z.number().int().positive().optional().describe('Allocated storage in MB (postgres only).'),
90
- }).passthrough();
91
- const AzureRedisSchema = zod_1.z.object({
140
+ engine: zod_1.z
141
+ .enum(['mssql', 'postgres'])
142
+ .optional()
143
+ .default(azure_defaults_1.AZURE_DEFAULTS.database.engine)
144
+ .describe("Database engine: 'mssql' provisions Azure SQL Database, 'postgres' provisions Azure Database for PostgreSQL Flexible Server."),
145
+ sku_name: zod_1.z
146
+ .string()
147
+ .optional()
148
+ .describe('SKU name — e.g. GP_S_Gen5_4 for mssql, GP_Standard_D4s_v3 for postgres.'),
149
+ storage_account_type: zod_1.z
150
+ .enum(['Local', 'Zone', 'Geo', 'GeoZone'])
151
+ .optional()
152
+ .default(azure_defaults_1.AZURE_DEFAULTS.database.storageAccountType)
153
+ .describe('Backup storage redundancy (mssql only).'),
154
+ pitr_retention_days: zod_1.z
155
+ .number()
156
+ .int()
157
+ .min(1)
158
+ .max(35)
159
+ .optional()
160
+ .default(azure_defaults_1.AZURE_DEFAULTS.database.pitrRetentionDays)
161
+ .describe('Point-in-time restore retention in days (mssql only).'),
162
+ ltr_weekly_retention: zod_1.z
163
+ .string()
164
+ .optional()
165
+ .default(azure_defaults_1.AZURE_DEFAULTS.database.ltrWeeklyRetention)
166
+ .describe('Long-term retention ISO 8601 duration, e.g. P21W (mssql only).'),
167
+ allocated_storage_mb: zod_1.z
168
+ .number()
169
+ .int()
170
+ .positive()
171
+ .optional()
172
+ .describe('Allocated storage in MB (postgres only).')
173
+ })
174
+ .passthrough();
175
+ const AzureRedisSchema = zod_1.z
176
+ .object({
92
177
  enabled: zod_1.z.boolean().optional().default(false),
93
- sku_name: zod_1.z.string().optional().default(azure_defaults_1.AZURE_DEFAULTS.redis.skuName).describe("Azure Managed Redis 'Balanced' tier SKU, e.g. Balanced_B0, Balanced_B1, Balanced_B5."),
94
- }).passthrough();
95
- const AzureContainerAppSchema = zod_1.z.object({
96
- cpu: zod_1.z.number().positive().optional().default(azure_defaults_1.AZURE_DEFAULTS.containerApp.cpu),
97
- memory: zod_1.z.string().optional().default(azure_defaults_1.AZURE_DEFAULTS.containerApp.memory).describe('CPU:memory ratio is fixed at 1:2 by the platform.'),
98
- concurrent_requests: zod_1.z.number().int().positive().optional().default(azure_defaults_1.AZURE_DEFAULTS.containerApp.concurrentRequests).describe('HTTP concurrency threshold that triggers scale-out.'),
99
- min_replicas: zod_1.z.number().int().nonnegative().optional().default(azure_defaults_1.AZURE_DEFAULTS.containerApp.minReplicas),
100
- max_replicas: zod_1.z.number().int().positive().optional().default(azure_defaults_1.AZURE_DEFAULTS.containerApp.maxReplicas),
101
- }).passthrough();
102
- const AzureWorkerSchema = zod_1.z.object({
178
+ sku_name: zod_1.z
179
+ .string()
180
+ .optional()
181
+ .default(azure_defaults_1.AZURE_DEFAULTS.redis.skuName)
182
+ .describe("Azure Managed Redis 'Balanced' tier SKU, e.g. Balanced_B0, Balanced_B1, Balanced_B5.")
183
+ })
184
+ .passthrough();
185
+ const AzureContainerAppSchema = zod_1.z
186
+ .object({
187
+ cpu: zod_1.z
188
+ .number()
189
+ .positive()
190
+ .optional()
191
+ .default(azure_defaults_1.AZURE_DEFAULTS.containerApp.cpu),
192
+ memory: zod_1.z
193
+ .string()
194
+ .optional()
195
+ .default(azure_defaults_1.AZURE_DEFAULTS.containerApp.memory)
196
+ .describe('CPU:memory ratio is fixed at 1:2 by the platform.'),
197
+ concurrent_requests: zod_1.z
198
+ .number()
199
+ .int()
200
+ .positive()
201
+ .optional()
202
+ .default(azure_defaults_1.AZURE_DEFAULTS.containerApp.concurrentRequests)
203
+ .describe('HTTP concurrency threshold that triggers scale-out.'),
204
+ min_replicas: zod_1.z
205
+ .number()
206
+ .int()
207
+ .nonnegative()
208
+ .optional()
209
+ .default(azure_defaults_1.AZURE_DEFAULTS.containerApp.minReplicas),
210
+ max_replicas: zod_1.z
211
+ .number()
212
+ .int()
213
+ .positive()
214
+ .optional()
215
+ .default(azure_defaults_1.AZURE_DEFAULTS.containerApp.maxReplicas)
216
+ })
217
+ .passthrough();
218
+ const AzureWorkerSchema = zod_1.z
219
+ .object({
103
220
  name: zod_1.z
104
221
  .string()
105
222
  .min(AZURE_APP_NAME_MIN_LENGTH, `worker name must be at least ${AZURE_APP_NAME_MIN_LENGTH} characters (Azure Container App naming requirement)`)
106
223
  .max(AZURE_APP_NAME_MAX_LENGTH, `worker name must be ${AZURE_APP_NAME_MAX_LENGTH} characters or fewer (Azure Container App naming limit)`)
107
224
  .regex(AZURE_APP_NAME_PATTERN, `worker name ${AZURE_APP_NAME_MESSAGE}`)
108
225
  .describe('Worker name. Used as the Container App name.'),
109
- dockerfile: zod_1.z.string().min(1).describe("Path to the worker's Dockerfile relative to the project root."),
110
- }).passthrough().meta({ id: 'azureWorker' });
111
- exports.AzureAppSchema = zod_1.z.object({
226
+ dockerfile: zod_1.z
227
+ .string()
228
+ .min(1)
229
+ .describe("Path to the worker's Dockerfile relative to the project root.")
230
+ })
231
+ .passthrough()
232
+ .meta({ id: 'azureWorker' });
233
+ exports.AzureAppSchema = zod_1.z
234
+ .object({
112
235
  name: zod_1.z
113
236
  .string()
114
237
  .min(AZURE_APP_NAME_MIN_LENGTH, `app name must be at least ${AZURE_APP_NAME_MIN_LENGTH} characters (Azure Container App naming requirement)`)
115
238
  .max(AZURE_APP_NAME_MAX_LENGTH, `app name must be ${AZURE_APP_NAME_MAX_LENGTH} characters or fewer (Azure Container App naming limit)`)
116
239
  .regex(AZURE_APP_NAME_PATTERN, `app name ${AZURE_APP_NAME_MESSAGE}`),
117
- technology: zod_1.z.string().min(1).describe("Application role/framework. 'nest' and 'react' get framework-specific env var injection (see docs); any other value deploys as a plain Container App with no extra env vars — pass everything explicitly via variables/build_env."),
240
+ technology: zod_1.z
241
+ .string()
242
+ .min(1)
243
+ .describe("Application role/framework. 'nest' and 'react' get framework-specific env var injection (see docs); any other value deploys as a plain Container App with no extra env vars — pass everything explicitly via variables/build_env."),
118
244
  dockerfile: zod_1.z.string().min(1),
119
245
  health_check_path: zod_1.z.string().min(1),
120
- domain: zod_1.z.string().min(1).describe('Custom domain for this app. A managed TLS certificate is issued automatically via Front Door once DNS validation completes (see the custom_domain_validation deploy output).'),
246
+ domain: zod_1.z
247
+ .string()
248
+ .min(1)
249
+ .describe('Custom domain for this app. A managed TLS certificate is issued automatically via Front Door once DNS validation completes (see the custom_domain_validation deploy output).'),
121
250
  port: zod_1.z.number().int().positive(),
122
251
  branch: zod_1.z.string().default('main'),
123
252
  template_repo_branch: zod_1.z.string().default('main'),
@@ -129,79 +258,156 @@ exports.AzureAppSchema = zod_1.z.object({
129
258
  engine: azure_defaults_1.AZURE_DEFAULTS.database.engine,
130
259
  storage_account_type: azure_defaults_1.AZURE_DEFAULTS.database.storageAccountType,
131
260
  pitr_retention_days: azure_defaults_1.AZURE_DEFAULTS.database.pitrRetentionDays,
132
- ltr_weekly_retention: azure_defaults_1.AZURE_DEFAULTS.database.ltrWeeklyRetention,
261
+ ltr_weekly_retention: azure_defaults_1.AZURE_DEFAULTS.database.ltrWeeklyRetention
133
262
  }).describe('Azure SQL Database or PostgreSQL Flexible Server for this app.'),
134
263
  redis: AzureRedisSchema.default({
135
264
  enabled: false,
136
- sku_name: azure_defaults_1.AZURE_DEFAULTS.redis.skuName,
265
+ sku_name: azure_defaults_1.AZURE_DEFAULTS.redis.skuName
137
266
  }).describe('Azure Managed Redis for this app.'),
138
267
  container_app: AzureContainerAppSchema.default({
139
268
  cpu: azure_defaults_1.AZURE_DEFAULTS.containerApp.cpu,
140
269
  memory: azure_defaults_1.AZURE_DEFAULTS.containerApp.memory,
141
270
  concurrent_requests: azure_defaults_1.AZURE_DEFAULTS.containerApp.concurrentRequests,
142
271
  min_replicas: azure_defaults_1.AZURE_DEFAULTS.containerApp.minReplicas,
143
- max_replicas: azure_defaults_1.AZURE_DEFAULTS.containerApp.maxReplicas,
144
- }).describe('Azure Container Apps (Consumption plan) sizing. Every app runs as a Container App.'),
145
- }).passthrough().meta({ id: 'azureApp' });
146
- exports.AzureInfraConfigSchema = zod_1.z.object({
272
+ max_replicas: azure_defaults_1.AZURE_DEFAULTS.containerApp.maxReplicas
273
+ }).describe('Azure Container Apps (Consumption plan) sizing. Every app runs as a Container App.')
274
+ })
275
+ .passthrough()
276
+ .meta({ id: 'azureApp' });
277
+ exports.AzureInfraConfigSchema = zod_1.z
278
+ .object({
147
279
  name: zod_1.z.string().min(1),
148
280
  slack_webhook_url: zod_1.z.string().optional(),
149
- github_repo_name: zod_1.z.string().optional().describe('Name of the GitHub repository to create/use. Defaults to "${name}-monorepo". Set this ' +
281
+ github_repo_name: zod_1.z
282
+ .string()
283
+ .optional()
284
+ .describe('Name of the GitHub repository to create/use. Defaults to "${name}-monorepo". Set this ' +
150
285
  'explicitly when this fuel.yml should target a repo already used by another environment ' +
151
- "(e.g. a separate prod fuel.yml with its own `name` pointing at the same repo as dev)."),
286
+ '(e.g. a separate prod fuel.yml with its own `name` pointing at the same repo as dev).'),
152
287
  deployment: zod_1.z.literal('azure'),
153
- location: zod_1.z.string().optional().default(azure_defaults_1.AZURE_DEFAULTS.location).describe('Azure region for all resources.'),
154
- monitor: zod_1.z.object({
155
- daily_data_cap_gb: zod_1.z.number().positive().optional().default(azure_defaults_1.AZURE_DEFAULTS.monitor.dailyDataCapGb),
156
- retention_days: zod_1.z.number().int().positive().optional().default(azure_defaults_1.AZURE_DEFAULTS.monitor.retentionDays),
157
- dashboard_count: zod_1.z.number().int().nonnegative().optional().default(azure_defaults_1.AZURE_DEFAULTS.monitor.dashboardCount),
158
- }).passthrough().default({
288
+ location: zod_1.z
289
+ .string()
290
+ .optional()
291
+ .default(azure_defaults_1.AZURE_DEFAULTS.location)
292
+ .describe('Azure region for all resources.'),
293
+ monitor: zod_1.z
294
+ .object({
295
+ daily_data_cap_gb: zod_1.z
296
+ .number()
297
+ .positive()
298
+ .optional()
299
+ .default(azure_defaults_1.AZURE_DEFAULTS.monitor.dailyDataCapGb),
300
+ retention_days: zod_1.z
301
+ .number()
302
+ .int()
303
+ .positive()
304
+ .optional()
305
+ .default(azure_defaults_1.AZURE_DEFAULTS.monitor.retentionDays),
306
+ dashboard_count: zod_1.z
307
+ .number()
308
+ .int()
309
+ .nonnegative()
310
+ .optional()
311
+ .default(azure_defaults_1.AZURE_DEFAULTS.monitor.dashboardCount)
312
+ })
313
+ .passthrough()
314
+ .default({
159
315
  daily_data_cap_gb: azure_defaults_1.AZURE_DEFAULTS.monitor.dailyDataCapGb,
160
316
  retention_days: azure_defaults_1.AZURE_DEFAULTS.monitor.retentionDays,
161
- dashboard_count: azure_defaults_1.AZURE_DEFAULTS.monitor.dashboardCount,
162
- }).describe('Application Insights / Log Analytics settings shared across all apps.'),
163
- front_door: zod_1.z.object({
164
- sku_name: zod_1.z.literal('Standard_AzureFrontDoor').optional().default(azure_defaults_1.AZURE_DEFAULTS.frontDoor.skuName),
165
- }).passthrough().default({ sku_name: azure_defaults_1.AZURE_DEFAULTS.frontDoor.skuName }),
166
- storage_account: zod_1.z.object({
167
- account_kind: zod_1.z.literal('BlockBlobStorage').optional().default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountKind),
168
- account_tier: zod_1.z.literal('Premium').optional().default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountTier),
169
- account_replication_type: zod_1.z.literal('LRS').optional().default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountReplicationType),
170
- access_tier: zod_1.z.literal('Hot').optional().default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accessTier),
171
- }).passthrough().default({
317
+ dashboard_count: azure_defaults_1.AZURE_DEFAULTS.monitor.dashboardCount
318
+ })
319
+ .describe('Application Insights / Log Analytics settings shared across all apps.'),
320
+ front_door: zod_1.z
321
+ .object({
322
+ sku_name: zod_1.z
323
+ .literal('Standard_AzureFrontDoor')
324
+ .optional()
325
+ .default(azure_defaults_1.AZURE_DEFAULTS.frontDoor.skuName)
326
+ })
327
+ .passthrough()
328
+ .default({ sku_name: azure_defaults_1.AZURE_DEFAULTS.frontDoor.skuName }),
329
+ storage_account: zod_1.z
330
+ .object({
331
+ account_kind: zod_1.z
332
+ .literal('BlockBlobStorage')
333
+ .optional()
334
+ .default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountKind),
335
+ account_tier: zod_1.z
336
+ .literal('Premium')
337
+ .optional()
338
+ .default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountTier),
339
+ account_replication_type: zod_1.z
340
+ .literal('LRS')
341
+ .optional()
342
+ .default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountReplicationType),
343
+ access_tier: zod_1.z
344
+ .literal('Hot')
345
+ .optional()
346
+ .default(azure_defaults_1.AZURE_DEFAULTS.storageAccount.accessTier)
347
+ })
348
+ .passthrough()
349
+ .default({
172
350
  account_kind: azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountKind,
173
351
  account_tier: azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountTier,
174
352
  account_replication_type: azure_defaults_1.AZURE_DEFAULTS.storageAccount.accountReplicationType,
175
- access_tier: azure_defaults_1.AZURE_DEFAULTS.storageAccount.accessTier,
176
- }).describe('Shared app storage account, used for app file uploads (not the Terraform state storage account).'),
177
- key_vault: zod_1.z.object({
178
- sku_name: zod_1.z.literal('standard').optional().default(azure_defaults_1.AZURE_DEFAULTS.keyVault.skuName),
179
- }).passthrough().default({ sku_name: azure_defaults_1.AZURE_DEFAULTS.keyVault.skuName }),
180
- github_oidc: zod_1.z.object({
181
- enabled: zod_1.z.boolean().optional().default(true).describe('Set to false to skip GitHub Actions OIDC entirely — no app registration, no role assignment ' +
353
+ access_tier: azure_defaults_1.AZURE_DEFAULTS.storageAccount.accessTier
354
+ })
355
+ .describe('Shared app storage account, used for app file uploads (not the Terraform state storage account).'),
356
+ key_vault: zod_1.z
357
+ .object({
358
+ sku_name: zod_1.z
359
+ .literal('standard')
360
+ .optional()
361
+ .default(azure_defaults_1.AZURE_DEFAULTS.keyVault.skuName)
362
+ })
363
+ .passthrough()
364
+ .default({ sku_name: azure_defaults_1.AZURE_DEFAULTS.keyVault.skuName }),
365
+ github_oidc: zod_1.z
366
+ .object({
367
+ enabled: zod_1.z
368
+ .boolean()
369
+ .optional()
370
+ .default(true)
371
+ .describe('Set to false to skip GitHub Actions OIDC entirely — no app registration, no role assignment ' +
182
372
  'for CI. Use this to unblock testing the rest of the stack while waiting on a tenant admin.'),
183
- existing_client_id: zod_1.z.string().optional().describe('Client ID of an app registration + service principal + federated identity credential(s) already ' +
373
+ existing_client_id: zod_1.z
374
+ .string()
375
+ .optional()
376
+ .describe('Client ID of an app registration + service principal + federated identity credential(s) already ' +
184
377
  'created out-of-band by a tenant admin. Set this when the deploying SP lacks the Entra ID ' +
185
378
  '"Application Administrator" role (creating an app registration requires it, regardless of ' +
186
379
  'subscription-level RBAC) — the module then reuses that identity instead of creating a new one. ' +
187
380
  'The Contributor role assignment is still managed by Terraform either way, since that only needs ' +
188
381
  '"User Access Administrator" on the subscription.'),
189
- existing_principal_id: zod_1.z.string().optional().describe('Object ID (principal ID) of the service principal identified by existing_client_id, when ' +
382
+ existing_principal_id: zod_1.z
383
+ .string()
384
+ .optional()
385
+ .describe('Object ID (principal ID) of the service principal identified by existing_client_id, when ' +
190
386
  'already known. Strongly recommended whenever existing_client_id is set: without it, ' +
191
387
  'Terraform looks the object ID up via Microsoft Graph, which needs Directory.Read.All or ' +
192
- 'Application.Read.All on the deploying SP — permissions many tenant admins won\'t grant just ' +
388
+ "Application.Read.All on the deploying SP — permissions many tenant admins won't grant just " +
193
389
  'to resolve one known object. Whoever created the app out-of-band can get this by running ' +
194
390
  '`az ad sp show --id <existing_client_id> --query id -o tsv`.'),
195
- manage_role_assignment: zod_1.z.boolean().optional().default(true).describe('Whether Terraform should create/manage the Contributor role assignment for this identity. ' +
391
+ manage_role_assignment: zod_1.z
392
+ .boolean()
393
+ .optional()
394
+ .default(true)
395
+ .describe('Whether Terraform should create/manage the Contributor role assignment for this identity. ' +
196
396
  'Set to false when it was already granted out-of-band alongside existing_client_id (e.g. a ' +
197
- 'tenant admin\'s onboarding runbook already ran the role assignment) — otherwise Terraform ' +
198
- 'tries to create it again on every apply and fails with RoleAssignmentExists.'),
199
- }).passthrough().optional().default({ enabled: true, manage_role_assignment: true }).describe('GitHub Actions OIDC identity used to push images and redeploy Container Apps.'),
200
- apps: zod_1.z.array(exports.AzureAppSchema).min(1),
201
- }).passthrough().meta({ id: 'azureConfig' });
397
+ "tenant admin's onboarding runbook already ran the role assignment) — otherwise Terraform " +
398
+ 'tries to create it again on every apply and fails with RoleAssignmentExists.')
399
+ })
400
+ .passthrough()
401
+ .optional()
402
+ .default({ enabled: true, manage_role_assignment: true })
403
+ .describe('GitHub Actions OIDC identity used to push images and redeploy Container Apps.'),
404
+ apps: zod_1.z.array(exports.AzureAppSchema).min(1)
405
+ })
406
+ .passthrough()
407
+ .meta({ id: 'azureConfig' });
202
408
  exports.InfraConfigSchema = zod_1.z.discriminatedUnion('deployment', [
203
409
  exports.EcsInfraConfigSchema,
204
- exports.AzureInfraConfigSchema,
410
+ exports.AzureInfraConfigSchema
205
411
  ]);
206
412
  exports.AWS_REQUIRED_CREDENTIAL_KEYS = [
207
413
  'AWS_ACCESS_KEY_ID',
@@ -209,7 +415,7 @@ exports.AWS_REQUIRED_CREDENTIAL_KEYS = [
209
415
  'AWS_REGION',
210
416
  'GITHUB_TOKEN',
211
417
  'GITHUB_USERNAME',
212
- 'GITHUB_ORGANIZATION',
418
+ 'GITHUB_ORGANIZATION'
213
419
  ];
214
420
  exports.AZURE_REQUIRED_CREDENTIAL_KEYS = [
215
421
  'AZURE_SUBSCRIPTION_ID',
@@ -218,16 +424,18 @@ exports.AZURE_REQUIRED_CREDENTIAL_KEYS = [
218
424
  'AZURE_CLIENT_SECRET',
219
425
  'GITHUB_TOKEN',
220
426
  'GITHUB_USERNAME',
221
- 'GITHUB_ORGANIZATION',
427
+ 'GITHUB_ORGANIZATION'
222
428
  ];
223
429
  // Union of every credential key across providers — `resolveCredentials` only
224
430
  // requires the subset matching the target deployment, but the type covers both
225
431
  // so a single Credentials object can be read/written regardless of provider.
226
432
  exports.REQUIRED_CREDENTIAL_KEYS = [
227
433
  ...exports.AWS_REQUIRED_CREDENTIAL_KEYS,
228
- ...exports.AZURE_REQUIRED_CREDENTIAL_KEYS,
434
+ ...exports.AZURE_REQUIRED_CREDENTIAL_KEYS
229
435
  ];
230
436
  function requiredCredentialKeysFor(deployment) {
231
- return deployment === 'azure' ? exports.AZURE_REQUIRED_CREDENTIAL_KEYS : exports.AWS_REQUIRED_CREDENTIAL_KEYS;
437
+ return deployment === 'azure'
438
+ ? exports.AZURE_REQUIRED_CREDENTIAL_KEYS
439
+ : exports.AWS_REQUIRED_CREDENTIAL_KEYS;
232
440
  }
233
441
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/infra/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/infra/types.ts"],"names":[],"mappings":"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"}