@aifabrix/builder 2.55.0 → 2.56.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.
- package/lib/agent-kit/host-approve.js +48 -6
- package/lib/agent-kit/init.js +2 -2
- package/lib/agent-kit/remote-prompts.js +46 -13
- package/lib/agent-kit/run.js +1 -1
- package/lib/agent-kit/start.js +310 -0
- package/lib/api/pipeline.api.js +32 -3
- package/lib/app/deploy.js +13 -9
- package/lib/app/offer-create-from-template.js +184 -0
- package/lib/cli/setup-app.js +15 -7
- package/lib/cli/setup-auth.js +11 -2
- package/lib/cli/setup-external-system-help.js +15 -3
- package/lib/cli/setup-external-system.js +21 -3
- package/lib/commands/agent-kit-help.js +74 -4
- package/lib/commands/agent-kit.js +83 -12
- package/lib/commands/auth-status-user.js +99 -0
- package/lib/commands/auth-status.js +14 -4
- package/lib/commands/datasource-load-export-cli.js +7 -2
- package/lib/commands/datasource-test-trust-cli.js +5 -1
- package/lib/commands/governance-command-action.js +5 -4
- package/lib/commands/identity-membership-role-cache.js +6 -1
- package/lib/commands/lifecycle-command-action.js +16 -15
- package/lib/commands/login-credentials.js +8 -3
- package/lib/commands/login-device.js +14 -5
- package/lib/commands/login.js +14 -1
- package/lib/commands/logout.js +50 -15
- package/lib/commands/repair-datasource-auto-rbac.js +4 -9
- package/lib/commands/role-assistant.js +24 -12
- package/lib/commands/upload-openapi-sync-followup.js +59 -0
- package/lib/commands/upload-qualification-client.js +131 -0
- package/lib/commands/upload-qualification-followups.js +104 -0
- package/lib/commands/upload-qualification-poll.js +143 -0
- package/lib/commands/upload.js +37 -156
- package/lib/commands/verify-governance-command-action.js +9 -7
- package/lib/commands/verify-operations-command-action.js +9 -8
- package/lib/commands/verify-trust-command-action.js +6 -5
- package/lib/deployment/deploy-poll-ui.js +14 -10
- package/lib/deployment/deployer-status.js +4 -4
- package/lib/external-system/deploy.js +46 -51
- package/lib/external-system/download.js +1 -2
- package/lib/generator/helpers.js +14 -46
- package/lib/generator/index.js +0 -4
- package/lib/integration-definition/apply-static-enterprise.js +5 -2
- package/lib/programmatic/builder-api-request.js +8 -4
- package/lib/programmatic/capability-registry.js +2 -0
- package/lib/programmatic/get-deploy-status.js +45 -0
- package/lib/programmatic/get-upload-status.js +45 -0
- package/lib/programmatic/http-accepted-response.js +31 -0
- package/lib/programmatic/openapi-descriptions.js +14 -4
- package/lib/programmatic/request-timeout.js +21 -15
- package/lib/programmatic/route-handler-map.js +6 -0
- package/lib/programmatic/run-deploy.js +7 -3
- package/lib/programmatic/run-upload.js +11 -7
- package/lib/role-assistant/knowledge-sync-settings-push.js +172 -0
- package/lib/role-assistant/knowledge-sync.js +9 -126
- package/lib/role-assistant/test-cases-evaluate.js +12 -1
- package/lib/role-assistant/test-cases-evidence.js +44 -5
- package/lib/role-assistant/test-cases-lifecycle.js +9 -3
- package/lib/role-assistant/test-runner.js +3 -0
- package/lib/schema/infra-parameter.schema.json +51 -3
- package/lib/schema/infra.parameter.yaml +482 -47
- package/lib/schema/type/document-storage.json +1 -1
- package/lib/utils/api-required-permissions.js +271 -0
- package/lib/utils/api.js +16 -13
- package/lib/utils/cli-json-exit.js +41 -0
- package/lib/utils/cli-utils.js +26 -7
- package/lib/utils/controller-url.js +78 -4
- package/lib/utils/deployment-errors.js +15 -0
- package/lib/utils/deployment-validation-helpers.js +4 -1
- package/lib/utils/device-code.js +31 -10
- package/lib/utils/error-formatters/error-parser.js +16 -1
- package/lib/utils/error-formatters/permission-errors.js +19 -5
- package/lib/utils/keycloak-realm-ready.js +5 -2
- package/lib/utils/logger.js +1 -0
- package/lib/utils/paths.js +26 -5
- package/lib/utils/qualification-poll-ui.js +136 -0
- package/lib/utils/secrets-helpers.js +2 -2
- package/lib/utils/write-stream-and-wait.js +63 -0
- package/package.json +22 -7
- package/templates/agent-kit/agent-kit.yaml +1 -1
- package/templates/agent-kit/instructions/AGENTKIT.md +25 -4
- package/templates/agent-kit/instructions/root.AGENTS.md +1 -1
- package/templates/agent-kit/skills/aifabrix-connected-system/SKILL.md +2 -1
- package/templates/agent-kit/skills/aifabrix-connected-system/references/delivery-gates.md +1 -1
- package/templates/agent-kit/skills/aifabrix-plan/SKILL.md +2 -1
- package/templates/agent-kit/skills/aifabrix-prove/SKILL.md +1 -0
- package/templates/agent-kit/skills/aifabrix-role-assistant/SKILL.md +1 -0
- package/templates/agent-kit/skills/shared/hosts.md +13 -26
- package/templates/agent-kit/skills/shared/login.md +16 -0
- package/templates/agent-kit/workspace/README.md +1 -1
- package/templates/applications/builder-api/env.template +4 -0
- package/templates/applications/dataplane/application.yaml +1 -2
- package/templates/applications/dataplane/env.template +5 -5
- package/templates/applications/keycloak/Dockerfile +12 -5
- package/templates/applications/keycloak/application.yaml +2 -2
- package/templates/applications/keycloak/cimd-lenient-parse/AbstractClientIdMetadataDocumentExecutor.java +3 -3
- package/templates/applications/keycloak/cimd-lenient-parse/SOURCE.md +6 -6
- package/templates/applications/keycloak/env.template +13 -1
- package/templates/applications/miso-controller/application.yaml +21 -2
- package/templates/applications/miso-controller/env.template +97 -28
- package/templates/applications/miso-controller/rbac.yaml +5 -0
- package/lib/generator/deploy-manifest-azure-kv.js +0 -81
|
@@ -43,12 +43,48 @@ parameters:
|
|
|
43
43
|
azure:
|
|
44
44
|
vaultSecretName: postgres-passwordKeyVault
|
|
45
45
|
notes: >-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
Local Docker Postgres admin password for up-infra. Azure application deployment does not
|
|
47
|
+
consume this name; use the system-scoped postgres-adminPassword entry for Azure.
|
|
48
|
+
|
|
49
|
+
- key: postgres-adminPassword
|
|
50
|
+
category: PostgreSQL
|
|
51
|
+
sensitive: true
|
|
52
|
+
valueSource: onboardingInput
|
|
53
|
+
requiredOnSystemOnboarding: true
|
|
54
|
+
scope: system
|
|
55
|
+
generator:
|
|
56
|
+
type: emptyString
|
|
57
|
+
ensureOn: [resolveApp]
|
|
58
|
+
azure:
|
|
59
|
+
vaultSecretName: postgres-adminPassword
|
|
60
|
+
legacyVaultSecretNames:
|
|
61
|
+
- '{serviceName}-postgres-admin-password'
|
|
62
|
+
notes: >-
|
|
63
|
+
Canonical Azure SDK PostgreSQL administrator password. The Marketplace alias
|
|
64
|
+
`{serviceName}-postgres-admin-password` is also accepted by the SDK, but Settings writes
|
|
65
|
+
this canonical name. Updating this stored value does not rotate the live PostgreSQL server.
|
|
66
|
+
|
|
67
|
+
- key: postgres-connectionString
|
|
68
|
+
category: PostgreSQL
|
|
69
|
+
sensitive: true
|
|
70
|
+
valueSource: providerOutput
|
|
71
|
+
requiredOnSystemOnboarding: false
|
|
72
|
+
scope: system
|
|
73
|
+
generator:
|
|
74
|
+
type: emptyString
|
|
75
|
+
ensureOn: [resolveApp]
|
|
76
|
+
azure:
|
|
77
|
+
vaultSecretName: postgres-connectionString
|
|
78
|
+
notes: >-
|
|
79
|
+
Azure SDK administrator connection string for the default postgres database. This contains
|
|
80
|
+
the administrator username and password; application runtime databases use separate users.
|
|
49
81
|
|
|
50
82
|
- key: redis-passwordKeyVault
|
|
51
|
-
|
|
83
|
+
category: Redis
|
|
84
|
+
sensitive: true
|
|
85
|
+
valueSource: optionalInput
|
|
86
|
+
requiredOnSystemOnboarding: false
|
|
87
|
+
scope: system
|
|
52
88
|
generator:
|
|
53
89
|
type: emptyAllowed
|
|
54
90
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -59,29 +95,151 @@ parameters:
|
|
|
59
95
|
Set a value in secrets when using authenticated Redis or Azure.
|
|
60
96
|
|
|
61
97
|
- key: redis-url
|
|
62
|
-
|
|
98
|
+
category: Redis
|
|
99
|
+
sensitive: true
|
|
100
|
+
valueSource: providerOutput
|
|
101
|
+
requiredOnSystemOnboarding: true
|
|
102
|
+
scope: system
|
|
63
103
|
generator:
|
|
64
104
|
type: literal
|
|
65
105
|
value: 'redis://${REDIS_HOST}:${REDIS_PORT}'
|
|
66
106
|
ensureOn: [upInfra, resolveApp]
|
|
67
107
|
azure:
|
|
68
|
-
notes:
|
|
108
|
+
notes: >-
|
|
109
|
+
Local up-infra resolves the REDIS_HOST/REDIS_PORT placeholders. Azure application deploy
|
|
110
|
+
must leave this key absent so the Azure SDK derives the rediss URL and credential.
|
|
111
|
+
|
|
112
|
+
- key: storage-keyKeyVault
|
|
113
|
+
category: Storage
|
|
114
|
+
sensitive: true
|
|
115
|
+
valueSource: providerOutput
|
|
116
|
+
requiredOnSystemOnboarding: false
|
|
117
|
+
scope: system
|
|
118
|
+
generator:
|
|
119
|
+
type: emptyString
|
|
120
|
+
ensureOn: [resolveApp]
|
|
121
|
+
azure:
|
|
122
|
+
vaultSecretName: storage-keyKeyVault
|
|
123
|
+
notes: Azure SDK-derived primary storage account key.
|
|
124
|
+
|
|
125
|
+
- key: storage-connectionStringKeyVault
|
|
126
|
+
category: Storage
|
|
127
|
+
sensitive: true
|
|
128
|
+
valueSource: providerOutput
|
|
129
|
+
requiredOnSystemOnboarding: false
|
|
130
|
+
scope: system
|
|
131
|
+
generator:
|
|
132
|
+
type: emptyString
|
|
133
|
+
ensureOn: [resolveApp]
|
|
134
|
+
azure:
|
|
135
|
+
vaultSecretName: storage-connectionStringKeyVault
|
|
136
|
+
notes: Azure SDK-derived storage account connection string.
|
|
137
|
+
|
|
138
|
+
- key: storage-account-key
|
|
139
|
+
category: Storage
|
|
140
|
+
sensitive: true
|
|
141
|
+
valueSource: providerOutput
|
|
142
|
+
requiredOnSystemOnboarding: false
|
|
143
|
+
scope: system
|
|
144
|
+
generator:
|
|
145
|
+
type: emptyString
|
|
146
|
+
ensureOn: [resolveApp]
|
|
147
|
+
azure:
|
|
148
|
+
vaultSecretName: storage-account-key
|
|
149
|
+
notes: Marketplace Bicep storage-account key name retained for installed-stack diagnostics.
|
|
150
|
+
|
|
151
|
+
- key: acr-server
|
|
152
|
+
category: Container Registry
|
|
153
|
+
sensitive: false
|
|
154
|
+
valueSource: providerOutput
|
|
155
|
+
requiredOnSystemOnboarding: false
|
|
156
|
+
scope: system
|
|
157
|
+
generator:
|
|
158
|
+
type: emptyString
|
|
159
|
+
ensureOn: [resolveApp]
|
|
160
|
+
azure:
|
|
161
|
+
vaultSecretName: acr-server
|
|
162
|
+
notes: Azure SDK-derived container registry login server.
|
|
163
|
+
|
|
164
|
+
- key: acr-username
|
|
165
|
+
category: Container Registry
|
|
166
|
+
sensitive: false
|
|
167
|
+
valueSource: providerOutput
|
|
168
|
+
requiredOnSystemOnboarding: false
|
|
169
|
+
scope: system
|
|
170
|
+
generator:
|
|
171
|
+
type: emptyString
|
|
172
|
+
ensureOn: [resolveApp]
|
|
173
|
+
azure:
|
|
174
|
+
vaultSecretName: acr-username
|
|
175
|
+
notes: Azure SDK-derived container registry username when password authentication is enabled.
|
|
176
|
+
|
|
177
|
+
- key: acr-passwordKeyVault
|
|
178
|
+
category: Container Registry
|
|
179
|
+
sensitive: true
|
|
180
|
+
valueSource: providerOutput
|
|
181
|
+
requiredOnSystemOnboarding: false
|
|
182
|
+
scope: system
|
|
183
|
+
generator:
|
|
184
|
+
type: emptyString
|
|
185
|
+
ensureOn: [resolveApp]
|
|
186
|
+
azure:
|
|
187
|
+
vaultSecretName: acr-passwordKeyVault
|
|
188
|
+
legacyVaultSecretNames:
|
|
189
|
+
- '{serviceName}-acr-registry-password'
|
|
190
|
+
notes: Azure SDK-derived container registry password when password authentication is enabled.
|
|
191
|
+
|
|
192
|
+
- key: frontdoor-url
|
|
193
|
+
category: Front Door
|
|
194
|
+
sensitive: false
|
|
195
|
+
valueSource: providerOutput
|
|
196
|
+
requiredOnSystemOnboarding: false
|
|
197
|
+
scope: system
|
|
198
|
+
generator:
|
|
199
|
+
type: emptyString
|
|
200
|
+
ensureOn: [resolveApp]
|
|
201
|
+
azure:
|
|
202
|
+
vaultSecretName: frontdoor-url
|
|
203
|
+
notes: Azure Front Door public URL when materialized by the environment deployment.
|
|
204
|
+
|
|
205
|
+
- key: frontdoor-host
|
|
206
|
+
category: Front Door
|
|
207
|
+
sensitive: false
|
|
208
|
+
valueSource: providerOutput
|
|
209
|
+
requiredOnSystemOnboarding: false
|
|
210
|
+
scope: system
|
|
211
|
+
generator:
|
|
212
|
+
type: emptyString
|
|
213
|
+
ensureOn: [resolveApp]
|
|
214
|
+
azure:
|
|
215
|
+
vaultSecretName: frontdoor-host
|
|
216
|
+
notes: Azure Front Door hostname when materialized by the environment deployment.
|
|
69
217
|
|
|
70
218
|
- key: keycloak-admin-passwordKeyVault
|
|
71
|
-
|
|
219
|
+
category: Keycloak
|
|
220
|
+
sensitive: true
|
|
221
|
+
valueSource: legacyMigration
|
|
222
|
+
requiredOnSystemOnboarding: true
|
|
223
|
+
scope: system
|
|
72
224
|
generator:
|
|
73
225
|
type: literal
|
|
74
226
|
value: '{{adminPassword}}'
|
|
75
227
|
ensureOn: [upInfra, resolveApp]
|
|
76
228
|
azure:
|
|
77
|
-
|
|
229
|
+
vaultSecretName: keycloak-admin-passwordKeyVault
|
|
230
|
+
legacyVaultSecretNames:
|
|
231
|
+
- '{serviceName}-keycloak-admin-password'
|
|
78
232
|
notes: >-
|
|
79
233
|
Local kv:// and secrets.local.yaml use the *KeyVault suffix. Miso install Bicep references
|
|
80
234
|
SecretName `${prefix}-keycloak-admin-password` (no KeyVault suffix) in
|
|
81
235
|
infrastructure/bicep/modules/05_miso-webapp.bicep and 07_keycloak-webapp.bicep.
|
|
82
236
|
|
|
83
237
|
- key: keycloak-web-server-url
|
|
84
|
-
|
|
238
|
+
category: Keycloak
|
|
239
|
+
sensitive: false
|
|
240
|
+
valueSource: providerOutput
|
|
241
|
+
requiredOnSystemOnboarding: true
|
|
242
|
+
scope: system
|
|
85
243
|
generator:
|
|
86
244
|
type: emptyString
|
|
87
245
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -92,7 +250,11 @@ parameters:
|
|
|
92
250
|
Shipped miso-controller/dataplane env templates use url://keycloak-public instead of this kv:// for local resolve.
|
|
93
251
|
|
|
94
252
|
- key: keycloak-internal-server-url
|
|
95
|
-
|
|
253
|
+
category: Keycloak
|
|
254
|
+
sensitive: false
|
|
255
|
+
valueSource: providerOutput
|
|
256
|
+
requiredOnSystemOnboarding: true
|
|
257
|
+
scope: system
|
|
96
258
|
generator:
|
|
97
259
|
type: emptyString
|
|
98
260
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -102,9 +264,67 @@ parameters:
|
|
|
102
264
|
Bicep (05_miso-webapp.bicep) uses unprefixed SecretName `keycloak-internal-server-url`.
|
|
103
265
|
Shipped templates use url://keycloak-internal for local resolve.
|
|
104
266
|
|
|
267
|
+
- key: keycloak-vdir-public
|
|
268
|
+
category: Keycloak
|
|
269
|
+
sensitive: false
|
|
270
|
+
valueSource: providerOutput
|
|
271
|
+
requiredOnSystemOnboarding: false
|
|
272
|
+
scope: system
|
|
273
|
+
generator:
|
|
274
|
+
type: emptyString
|
|
275
|
+
ensureOn: [resolveApp]
|
|
276
|
+
azure:
|
|
277
|
+
vaultSecretName: keycloak-vdir-public
|
|
278
|
+
notes: Public Keycloak virtual-directory path produced by the platform Bicep deployment.
|
|
279
|
+
|
|
280
|
+
- key: miso-controller-web-server-url
|
|
281
|
+
category: Platform URLs
|
|
282
|
+
sensitive: false
|
|
283
|
+
valueSource: providerOutput
|
|
284
|
+
requiredOnSystemOnboarding: true
|
|
285
|
+
scope: system
|
|
286
|
+
generator:
|
|
287
|
+
type: emptyString
|
|
288
|
+
ensureOn: [resolveApp]
|
|
289
|
+
azure:
|
|
290
|
+
vaultSecretName: miso-controller-web-server-url
|
|
291
|
+
notes: Public Miso Controller URL produced by the platform Bicep deployment.
|
|
292
|
+
|
|
293
|
+
- key: miso-controller-internal-server-url
|
|
294
|
+
category: Platform URLs
|
|
295
|
+
sensitive: false
|
|
296
|
+
valueSource: providerOutput
|
|
297
|
+
requiredOnSystemOnboarding: true
|
|
298
|
+
scope: system
|
|
299
|
+
generator:
|
|
300
|
+
type: emptyString
|
|
301
|
+
ensureOn: [resolveApp]
|
|
302
|
+
azure:
|
|
303
|
+
vaultSecretName: miso-controller-internal-server-url
|
|
304
|
+
legacyVaultSecretNames:
|
|
305
|
+
- miso-controller-internal-server-urlKeyVault
|
|
306
|
+
notes: Internal Miso Controller URL under the direct manifest name.
|
|
307
|
+
|
|
308
|
+
- key: miso-controller-vdir-public
|
|
309
|
+
category: Platform URLs
|
|
310
|
+
sensitive: false
|
|
311
|
+
valueSource: providerOutput
|
|
312
|
+
requiredOnSystemOnboarding: true
|
|
313
|
+
scope: system
|
|
314
|
+
generator:
|
|
315
|
+
type: emptyString
|
|
316
|
+
ensureOn: [resolveApp]
|
|
317
|
+
azure:
|
|
318
|
+
vaultSecretName: miso-controller-vdir-public
|
|
319
|
+
notes: Public Miso Controller virtual-directory path produced by the platform Bicep deployment.
|
|
320
|
+
|
|
105
321
|
# When env.template uses kv://keycloak-client-idKeyVault (multi-realm / dev naming).
|
|
106
322
|
- key: keycloak-client-idKeyVault
|
|
107
|
-
|
|
323
|
+
category: Keycloak
|
|
324
|
+
sensitive: false
|
|
325
|
+
valueSource: generated
|
|
326
|
+
requiredOnSystemOnboarding: true
|
|
327
|
+
scope: system
|
|
108
328
|
generator:
|
|
109
329
|
type: literal
|
|
110
330
|
value: 'miso-controller-miso-keycloak'
|
|
@@ -114,7 +334,11 @@ parameters:
|
|
|
114
334
|
Default OAuth client id for controller ↔ Keycloak when resolved from secrets; override per environment.
|
|
115
335
|
|
|
116
336
|
- key: keycloak-client-secretKeyVault
|
|
117
|
-
|
|
337
|
+
category: Keycloak
|
|
338
|
+
sensitive: true
|
|
339
|
+
valueSource: generated
|
|
340
|
+
requiredOnSystemOnboarding: true
|
|
341
|
+
scope: system
|
|
118
342
|
generator:
|
|
119
343
|
type: randomBytes32
|
|
120
344
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -125,7 +349,11 @@ parameters:
|
|
|
125
349
|
# Miso-controller Entra ID onboarding (vendor multi-tenant app). Empty client/callback values
|
|
126
350
|
# allow local resolve and start-dev; set real values before Entra admin-consent flows.
|
|
127
351
|
- key: entra-callback-state-secret
|
|
128
|
-
|
|
352
|
+
category: Microsoft Entra ID
|
|
353
|
+
sensitive: true
|
|
354
|
+
valueSource: generated
|
|
355
|
+
requiredOnSystemOnboarding: true
|
|
356
|
+
scope: system
|
|
129
357
|
generator:
|
|
130
358
|
type: randomBytes32
|
|
131
359
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -135,7 +363,11 @@ parameters:
|
|
|
135
363
|
maps to ENTRA_CALLBACK_STATE_SECRET in miso-controller env.template.
|
|
136
364
|
|
|
137
365
|
- key: entra-callback-uri
|
|
138
|
-
|
|
366
|
+
category: Microsoft Entra ID
|
|
367
|
+
sensitive: false
|
|
368
|
+
valueSource: optionalInput
|
|
369
|
+
requiredOnSystemOnboarding: false
|
|
370
|
+
scope: system
|
|
139
371
|
generator:
|
|
140
372
|
type: emptyString
|
|
141
373
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -145,7 +377,11 @@ parameters:
|
|
|
145
377
|
empty locally until Mori URL is configured.
|
|
146
378
|
|
|
147
379
|
- key: entra-client-idKeyVault
|
|
148
|
-
|
|
380
|
+
category: Microsoft Entra ID
|
|
381
|
+
sensitive: false
|
|
382
|
+
valueSource: optionalInput
|
|
383
|
+
requiredOnSystemOnboarding: false
|
|
384
|
+
scope: system
|
|
149
385
|
generator:
|
|
150
386
|
type: emptyString
|
|
151
387
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -154,18 +390,28 @@ parameters:
|
|
|
154
390
|
Vendor Entra app client id (ENTRA_ID_CLIENT_ID); empty for local dev without Entra flows.
|
|
155
391
|
|
|
156
392
|
- key: entra-client-secretKeyVault
|
|
157
|
-
|
|
393
|
+
category: Microsoft Entra ID
|
|
394
|
+
sensitive: true
|
|
395
|
+
valueSource: optionalInput
|
|
396
|
+
requiredOnSystemOnboarding: false
|
|
397
|
+
scope: system
|
|
158
398
|
generator:
|
|
159
399
|
type: emptyString
|
|
160
400
|
ensureOn: [upInfra, resolveApp]
|
|
161
401
|
azure:
|
|
402
|
+
legacyVaultSecretNames:
|
|
403
|
+
- entra-vendor-client-secret
|
|
162
404
|
notes: >-
|
|
163
405
|
Vendor Entra app client secret (ENTRA_ID_CLIENT_SECRET); empty for local dev without Entra flows.
|
|
164
406
|
|
|
165
407
|
# Keycloak events: webhook signature secret used by miso-controller (KEYCLOAK_EVENTS_SECRET).
|
|
166
408
|
# This must exist on first boot because up-platform runs containers from templates (no prior resolve).
|
|
167
409
|
- key: keycloak-events-secretKeyVault
|
|
168
|
-
|
|
410
|
+
category: Keycloak
|
|
411
|
+
sensitive: true
|
|
412
|
+
valueSource: generated
|
|
413
|
+
requiredOnSystemOnboarding: true
|
|
414
|
+
scope: system
|
|
169
415
|
generator:
|
|
170
416
|
type: randomBytes32
|
|
171
417
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -174,7 +420,11 @@ parameters:
|
|
|
174
420
|
Shared secret for Keycloak event signature verification. Generated on first ensure for local bootstrap.
|
|
175
421
|
|
|
176
422
|
- key: keycloak-default-passwordKeyVault
|
|
177
|
-
|
|
423
|
+
category: Keycloak
|
|
424
|
+
sensitive: true
|
|
425
|
+
valueSource: generated
|
|
426
|
+
requiredOnSystemOnboarding: true
|
|
427
|
+
scope: system
|
|
178
428
|
generator:
|
|
179
429
|
type: literal
|
|
180
430
|
value: '{{userPassword}}'
|
|
@@ -184,41 +434,48 @@ parameters:
|
|
|
184
434
|
Keycloak default-user password for local/bootstrap; explicit literal so it is not randomBytes32.
|
|
185
435
|
|
|
186
436
|
- key: miso-controller-secrets-encryptionKeyVault
|
|
437
|
+
ownerAppKey: miso-controller
|
|
187
438
|
scope: app
|
|
188
439
|
generator:
|
|
189
440
|
type: randomBytes32
|
|
190
441
|
ensureOn: [upInfra, resolveApp]
|
|
191
442
|
azure:
|
|
192
|
-
|
|
443
|
+
vaultSecretName: miso-controller-secrets-encryptionKeyVault
|
|
444
|
+
legacyVaultSecretNames:
|
|
445
|
+
- '{serviceName}-encryption-keyKeyVault'
|
|
193
446
|
notes: >-
|
|
194
447
|
32-byte secret as base64; generated on first ensure. Rotate in production.
|
|
195
448
|
|
|
196
449
|
# Local kv:// name matches miso-controller env.template (JWT_SECRET); not the generic {appKey}-secrets-jwtKeyVault Azure name.
|
|
197
450
|
- key: miso-controller-jwt-secretKeyVault
|
|
451
|
+
ownerAppKey: miso-controller
|
|
198
452
|
scope: app
|
|
199
453
|
generator:
|
|
200
454
|
type: randomBytes32
|
|
201
455
|
ensureOn: [upInfra, resolveApp]
|
|
202
456
|
azure:
|
|
203
|
-
|
|
457
|
+
vaultSecretName: miso-controller-jwt-secretKeyVault
|
|
458
|
+
legacyVaultSecretNames:
|
|
459
|
+
- '{serviceName}-secrets-jwtKeyVault'
|
|
204
460
|
notes: >-
|
|
205
461
|
JWT signing secret; generated on first ensure. Azure Bicep typically uses `${prefix}-secrets-jwtKeyVault`.
|
|
206
462
|
|
|
207
|
-
# LICENSE_JWT=kv://miso-controller-jwt-licenseKeyVault —
|
|
208
|
-
#
|
|
463
|
+
# LICENSE_JWT=kv://miso-controller-jwt-licenseKeyVault — empty means Community edition.
|
|
464
|
+
# Set only to a real signed offline licence JWT.
|
|
209
465
|
- key: miso-controller-jwt-licenseKeyVault
|
|
466
|
+
ownerAppKey: miso-controller
|
|
210
467
|
scope: app
|
|
211
468
|
generator:
|
|
212
|
-
type:
|
|
213
|
-
value: 'DEVELOPMENT'
|
|
469
|
+
type: emptyString
|
|
214
470
|
ensureOn: [upInfra, resolveApp]
|
|
215
471
|
azure:
|
|
216
472
|
notes: >-
|
|
217
|
-
|
|
218
|
-
|
|
473
|
+
Empty means the unlicensed Community edition (DEV, size S, shared resources).
|
|
474
|
+
Override only with a real signed offline license JWT.
|
|
219
475
|
|
|
220
476
|
# Exact entry so this is not caught by *KeyVault → randomBytes32 (invalid email).
|
|
221
477
|
- key: miso-controller-admin-emailKeyVault
|
|
478
|
+
ownerAppKey: miso-controller
|
|
222
479
|
scope: app
|
|
223
480
|
generator:
|
|
224
481
|
type: literal
|
|
@@ -229,19 +486,26 @@ parameters:
|
|
|
229
486
|
|
|
230
487
|
# Local first-time install / onboarding default (change in production).
|
|
231
488
|
- key: miso-controller-admin-passwordKeyVault
|
|
489
|
+
ownerAppKey: miso-controller
|
|
232
490
|
scope: app
|
|
233
491
|
generator:
|
|
234
492
|
type: literal
|
|
235
493
|
value: '{{adminPassword}}'
|
|
236
494
|
ensureOn: [upInfra, resolveApp]
|
|
237
495
|
azure:
|
|
496
|
+
legacyVaultSecretNames:
|
|
497
|
+
- '{serviceName}-onboarding-admin-password'
|
|
238
498
|
notes: >-
|
|
239
499
|
Matches controller onboarding default; override in secrets for non-dev.
|
|
240
500
|
Same secret backs ONBOARDING_ADMIN_PASSWORD and MISO_ADMIN_PASSWORD in env.template.
|
|
241
501
|
|
|
242
502
|
# DEPLOYMENT=azure only; local/docker leave empty (do not generate random placeholders).
|
|
243
503
|
- key: azure-subscription-idKeyVault
|
|
244
|
-
|
|
504
|
+
category: Azure
|
|
505
|
+
sensitive: false
|
|
506
|
+
valueSource: onboardingInput
|
|
507
|
+
requiredOnSystemOnboarding: false
|
|
508
|
+
scope: system
|
|
245
509
|
generator:
|
|
246
510
|
type: emptyString
|
|
247
511
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -249,7 +513,11 @@ parameters:
|
|
|
249
513
|
notes: Production Key Vault / app settings; empty locally.
|
|
250
514
|
|
|
251
515
|
- key: azure-tenant-idKeyVault
|
|
252
|
-
|
|
516
|
+
category: Azure
|
|
517
|
+
sensitive: false
|
|
518
|
+
valueSource: onboardingInput
|
|
519
|
+
requiredOnSystemOnboarding: false
|
|
520
|
+
scope: system
|
|
253
521
|
generator:
|
|
254
522
|
type: emptyString
|
|
255
523
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -257,7 +525,11 @@ parameters:
|
|
|
257
525
|
notes: Production only; empty locally.
|
|
258
526
|
|
|
259
527
|
- key: azure-service-nameKeyVault
|
|
260
|
-
|
|
528
|
+
category: Azure
|
|
529
|
+
sensitive: false
|
|
530
|
+
valueSource: onboardingInput
|
|
531
|
+
requiredOnSystemOnboarding: false
|
|
532
|
+
scope: system
|
|
261
533
|
generator:
|
|
262
534
|
type: emptyString
|
|
263
535
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -270,7 +542,7 @@ parameters:
|
|
|
270
542
|
type: emptyString
|
|
271
543
|
ensureOn: [upInfra, resolveApp]
|
|
272
544
|
azure:
|
|
273
|
-
notes:
|
|
545
|
+
notes: Optional service-principal override for local/tooling use; Azure App Service uses managed identity.
|
|
274
546
|
|
|
275
547
|
- key: azure-client-secretKeyVault
|
|
276
548
|
scope: infra
|
|
@@ -278,7 +550,7 @@ parameters:
|
|
|
278
550
|
type: emptyString
|
|
279
551
|
ensureOn: [upInfra, resolveApp]
|
|
280
552
|
azure:
|
|
281
|
-
notes:
|
|
553
|
+
notes: Optional service-principal override for local/tooling use; Azure App Service uses managed identity.
|
|
282
554
|
|
|
283
555
|
# Optional private npm; local scaffold leaves empty.
|
|
284
556
|
- key: BASH_NPM_TOKEN
|
|
@@ -300,16 +572,20 @@ parameters:
|
|
|
300
572
|
|
|
301
573
|
# Default client id for controller app in local multi-service layout; override after register if needed.
|
|
302
574
|
- key: miso-controller-client-idKeyVault
|
|
575
|
+
ownerAppKey: miso-controller
|
|
303
576
|
scope: app
|
|
304
577
|
generator:
|
|
305
578
|
type: literal
|
|
306
579
|
value: 'miso-controller-miso-miso-controller'
|
|
307
580
|
ensureOn: [upInfra, resolveApp]
|
|
308
581
|
azure:
|
|
582
|
+
legacyVaultSecretNames:
|
|
583
|
+
- '{serviceName}-miso-clientIdKeyVault'
|
|
309
584
|
notes: >-
|
|
310
585
|
Per-app OAuth client id from controller registration; literal default matches local Keycloak client naming.
|
|
311
586
|
|
|
312
587
|
- key: miso-controller-client-secretKeyVault
|
|
588
|
+
ownerAppKey: miso-controller
|
|
313
589
|
scope: app
|
|
314
590
|
generator:
|
|
315
591
|
type: randomBytes32
|
|
@@ -321,6 +597,7 @@ parameters:
|
|
|
321
597
|
|
|
322
598
|
# Dataplane ↔ controller OAuth (builder/dataplane env.template MISO_CLIENTID / MISO_CLIENTSECRET).
|
|
323
599
|
- key: dataplane-client-idKeyVault
|
|
600
|
+
ownerAppKey: dataplane
|
|
324
601
|
scope: app
|
|
325
602
|
generator:
|
|
326
603
|
type: literal
|
|
@@ -332,6 +609,7 @@ parameters:
|
|
|
332
609
|
(override for environments such as miso-controller-dev-dataplane).
|
|
333
610
|
|
|
334
611
|
- key: dataplane-client-secretKeyVault
|
|
612
|
+
ownerAppKey: dataplane
|
|
335
613
|
scope: app
|
|
336
614
|
generator:
|
|
337
615
|
type: randomBytes32
|
|
@@ -340,10 +618,14 @@ parameters:
|
|
|
340
618
|
vaultSecretName: dataplane-client-secretKeyVault
|
|
341
619
|
notes: Per-app OAuth client secret for dataplane; generated on first ensure.
|
|
342
620
|
|
|
343
|
-
# Mori / telemetry
|
|
621
|
+
# Mori / telemetry is optional for an unlicensed Community installation.
|
|
344
622
|
# MORI_AUTH_METHOD=kv://mori-controller-auth-methodKeyVault — local default apiKey.
|
|
345
623
|
- key: mori-controller-auth-methodKeyVault
|
|
346
|
-
|
|
624
|
+
category: Mori
|
|
625
|
+
sensitive: false
|
|
626
|
+
valueSource: optionalInput
|
|
627
|
+
requiredOnSystemOnboarding: false
|
|
628
|
+
scope: system
|
|
347
629
|
generator:
|
|
348
630
|
type: literal
|
|
349
631
|
value: 'apiKey'
|
|
@@ -353,7 +635,11 @@ parameters:
|
|
|
353
635
|
Local/dev default apiKey. Override when using Mori basic auth or other methods.
|
|
354
636
|
|
|
355
637
|
- key: mori-controller-api-keyKeyVault
|
|
356
|
-
|
|
638
|
+
category: Mori
|
|
639
|
+
sensitive: true
|
|
640
|
+
valueSource: optionalInput
|
|
641
|
+
requiredOnSystemOnboarding: false
|
|
642
|
+
scope: system
|
|
357
643
|
generator:
|
|
358
644
|
type: emptyString
|
|
359
645
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -361,7 +647,11 @@ parameters:
|
|
|
361
647
|
notes: Empty locally; set when calling Mori with API key auth.
|
|
362
648
|
|
|
363
649
|
- key: mori-controller-basic-usernameKeyVault
|
|
364
|
-
|
|
650
|
+
category: Mori
|
|
651
|
+
sensitive: false
|
|
652
|
+
valueSource: optionalInput
|
|
653
|
+
requiredOnSystemOnboarding: false
|
|
654
|
+
scope: system
|
|
365
655
|
generator:
|
|
366
656
|
type: emptyString
|
|
367
657
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -369,7 +659,11 @@ parameters:
|
|
|
369
659
|
notes: Empty locally; Mori basic auth optional.
|
|
370
660
|
|
|
371
661
|
- key: mori-controller-basic-passwordKeyVault
|
|
372
|
-
|
|
662
|
+
category: Mori
|
|
663
|
+
sensitive: true
|
|
664
|
+
valueSource: optionalInput
|
|
665
|
+
requiredOnSystemOnboarding: false
|
|
666
|
+
scope: system
|
|
373
667
|
generator:
|
|
374
668
|
type: emptyString
|
|
375
669
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -377,7 +671,11 @@ parameters:
|
|
|
377
671
|
notes: Empty locally; Mori basic auth optional.
|
|
378
672
|
|
|
379
673
|
- key: appinsights-connectionStringKeyVault
|
|
380
|
-
|
|
674
|
+
category: Observability
|
|
675
|
+
sensitive: true
|
|
676
|
+
valueSource: providerOutput
|
|
677
|
+
requiredOnSystemOnboarding: false
|
|
678
|
+
scope: system
|
|
381
679
|
generator:
|
|
382
680
|
type: emptyString
|
|
383
681
|
ensureOn: [upInfra, resolveApp]
|
|
@@ -386,14 +684,70 @@ parameters:
|
|
|
386
684
|
notes: >-
|
|
387
685
|
Aligns with keyvault.md / Azure naming (appinsights.connectionStringKeyVault). Empty locally until set from Azure Portal.
|
|
388
686
|
|
|
687
|
+
- key: appinsights-keyKeyVault
|
|
688
|
+
category: Observability
|
|
689
|
+
sensitive: true
|
|
690
|
+
valueSource: providerOutput
|
|
691
|
+
requiredOnSystemOnboarding: false
|
|
692
|
+
scope: system
|
|
693
|
+
generator:
|
|
694
|
+
type: emptyString
|
|
695
|
+
ensureOn: [resolveApp]
|
|
696
|
+
azure:
|
|
697
|
+
vaultSecretName: appinsights-keyKeyVault
|
|
698
|
+
notes: Azure SDK-derived Application Insights instrumentation key.
|
|
699
|
+
|
|
700
|
+
- key: loganalytics-workspace-id
|
|
701
|
+
category: Observability
|
|
702
|
+
sensitive: false
|
|
703
|
+
valueSource: providerOutput
|
|
704
|
+
requiredOnSystemOnboarding: false
|
|
705
|
+
scope: system
|
|
706
|
+
generator:
|
|
707
|
+
type: emptyString
|
|
708
|
+
ensureOn: [resolveApp]
|
|
709
|
+
azure:
|
|
710
|
+
vaultSecretName: loganalytics-workspace-id
|
|
711
|
+
notes: Azure SDK-derived Log Analytics workspace customer identifier.
|
|
712
|
+
|
|
713
|
+
- key: azureopenai-endpoint
|
|
714
|
+
category: Azure OpenAI
|
|
715
|
+
sensitive: false
|
|
716
|
+
valueSource: optionalInput
|
|
717
|
+
requiredOnSystemOnboarding: false
|
|
718
|
+
scope: system
|
|
719
|
+
generator:
|
|
720
|
+
type: emptyString
|
|
721
|
+
ensureOn: [resolveApp]
|
|
722
|
+
azure:
|
|
723
|
+
vaultSecretName: azureopenai-endpoint
|
|
724
|
+
notes: Azure OpenAI endpoint produced by the environment infrastructure deployment.
|
|
725
|
+
|
|
726
|
+
- key: azureopenai-apikey
|
|
727
|
+
category: Azure OpenAI
|
|
728
|
+
sensitive: true
|
|
729
|
+
valueSource: optionalInput
|
|
730
|
+
requiredOnSystemOnboarding: false
|
|
731
|
+
scope: system
|
|
732
|
+
generator:
|
|
733
|
+
type: emptyString
|
|
734
|
+
ensureOn: [resolveApp]
|
|
735
|
+
azure:
|
|
736
|
+
vaultSecretName: azureopenai-apikey
|
|
737
|
+
notes: Azure OpenAI API key produced by the environment infrastructure deployment.
|
|
738
|
+
|
|
389
739
|
# Dataplane builder/dataplane env.template (AI/LLM); optional until OpenAI or Azure OpenAI is configured.
|
|
390
740
|
- key: secrets-openaiApiKeyVault
|
|
391
|
-
|
|
741
|
+
category: OpenAI
|
|
742
|
+
sensitive: true
|
|
743
|
+
valueSource: optionalInput
|
|
744
|
+
requiredOnSystemOnboarding: false
|
|
745
|
+
scope: system
|
|
392
746
|
generator:
|
|
393
747
|
type: emptyString
|
|
394
|
-
ensureOn: [
|
|
748
|
+
ensureOn: [resolveApp]
|
|
395
749
|
azure:
|
|
396
|
-
notes:
|
|
750
|
+
notes: Optional shared OpenAI API key; empty until supplied and never auto-generated.
|
|
397
751
|
|
|
398
752
|
- key: azure-openaiapi-urlKeyVault
|
|
399
753
|
scope: app
|
|
@@ -411,6 +765,31 @@ parameters:
|
|
|
411
765
|
azure:
|
|
412
766
|
notes: Empty until set; user-supplied Azure OpenAI API key (not auto-generated).
|
|
413
767
|
|
|
768
|
+
# Dataplane RS256 signing identity. The two rows are generated as one linked pair.
|
|
769
|
+
- key: secrets-certificatePrivateKeyVault
|
|
770
|
+
ownerAppKey: dataplane
|
|
771
|
+
scope: app
|
|
772
|
+
generator:
|
|
773
|
+
type: rsaKeyPair
|
|
774
|
+
pairId: dataplane-signing
|
|
775
|
+
part: private
|
|
776
|
+
ensureOn: [resolveApp]
|
|
777
|
+
azure:
|
|
778
|
+
vaultSecretName: secrets-certificatePrivateKeyVault
|
|
779
|
+
notes: PKCS#8 PEM private key generated with the matching public key.
|
|
780
|
+
|
|
781
|
+
- key: secrets-certificatePublicKeyVault
|
|
782
|
+
ownerAppKey: dataplane
|
|
783
|
+
scope: app
|
|
784
|
+
generator:
|
|
785
|
+
type: rsaKeyPair
|
|
786
|
+
pairId: dataplane-signing
|
|
787
|
+
part: public
|
|
788
|
+
ensureOn: [resolveApp]
|
|
789
|
+
azure:
|
|
790
|
+
vaultSecretName: secrets-certificatePublicKeyVault
|
|
791
|
+
notes: SPKI PEM public key derived from the linked private key.
|
|
792
|
+
|
|
414
793
|
# Legacy unprefixed name (scaffold / old env.template); prefer *KeyVault suffix or {appKey}-secrets-apiKeyVault (keyvault.md).
|
|
415
794
|
- key: api-key
|
|
416
795
|
scope: app
|
|
@@ -423,13 +802,26 @@ parameters:
|
|
|
423
802
|
|
|
424
803
|
# Legacy unprefixed name; prefer kv://{appKey}-secrets-apiKeyVault in env.template (keyvault.md secrets.apiKeyVault).
|
|
425
804
|
- key: miso-controller-secrets-apiKeyVault
|
|
805
|
+
scope: infra
|
|
806
|
+
generator:
|
|
807
|
+
type: emptyAllowed
|
|
808
|
+
ensureOn: [upInfra]
|
|
809
|
+
azure:
|
|
810
|
+
notes: >-
|
|
811
|
+
Optional local testing/development bearer bypass. A supplied local value is resolved; when absent,
|
|
812
|
+
local and Azure application deployment resolve it as empty and do not fail.
|
|
813
|
+
|
|
814
|
+
- key: mori-callback-api-keyKeyVault
|
|
815
|
+
ownerAppKey: miso-controller
|
|
426
816
|
scope: app
|
|
427
817
|
generator:
|
|
428
818
|
type: randomBytes32
|
|
429
|
-
ensureOn: [
|
|
819
|
+
ensureOn: [resolveApp]
|
|
430
820
|
azure:
|
|
431
|
-
|
|
432
|
-
|
|
821
|
+
vaultSecretName: mori-callback-api-keyKeyVault
|
|
822
|
+
legacyVaultSecretNames:
|
|
823
|
+
- marketplace-mori-callback-api-key
|
|
824
|
+
notes: Miso Controller callback credential; generated only when its resolved manifest requires it.
|
|
433
825
|
|
|
434
826
|
# App semver when env.template / conversion yields kv://version (local secrets backfill).
|
|
435
827
|
- key: version
|
|
@@ -442,15 +834,57 @@ parameters:
|
|
|
442
834
|
notes: >-
|
|
443
835
|
Default application version for kv://version; override in secrets when needed.
|
|
444
836
|
|
|
445
|
-
#
|
|
837
|
+
# Exact Miso Controller rows retain Marketplace infrastructure-name aliases.
|
|
838
|
+
- key: databases-miso-controller-0-urlKeyVault
|
|
839
|
+
ownerAppKey: miso-controller
|
|
840
|
+
scope: app
|
|
841
|
+
generator:
|
|
842
|
+
type: databaseUrl
|
|
843
|
+
ensureOn: [upInfra, resolveApp]
|
|
844
|
+
azure:
|
|
845
|
+
vaultSecretName: databases-miso-controller-0-urlKeyVault
|
|
846
|
+
legacyVaultSecretNames:
|
|
847
|
+
- '{serviceName}-databases-0-urlKeyVault'
|
|
848
|
+
|
|
849
|
+
- key: databases-miso-controller-0-passwordKeyVault
|
|
850
|
+
ownerAppKey: miso-controller
|
|
851
|
+
scope: app
|
|
852
|
+
generator:
|
|
853
|
+
type: databasePassword
|
|
854
|
+
ensureOn: [upInfra, resolveApp]
|
|
855
|
+
azure:
|
|
856
|
+
vaultSecretName: databases-miso-controller-0-passwordKeyVault
|
|
857
|
+
|
|
858
|
+
- key: databases-miso-controller-1-urlKeyVault
|
|
859
|
+
ownerAppKey: miso-controller
|
|
860
|
+
scope: app
|
|
861
|
+
generator:
|
|
862
|
+
type: databaseUrl
|
|
863
|
+
ensureOn: [upInfra, resolveApp]
|
|
864
|
+
azure:
|
|
865
|
+
vaultSecretName: databases-miso-controller-1-urlKeyVault
|
|
866
|
+
legacyVaultSecretNames:
|
|
867
|
+
- '{serviceName}-databases-1-urlKeyVault'
|
|
868
|
+
|
|
869
|
+
- key: databases-miso-controller-1-passwordKeyVault
|
|
870
|
+
ownerAppKey: miso-controller
|
|
871
|
+
scope: app
|
|
872
|
+
generator:
|
|
873
|
+
type: databasePassword
|
|
874
|
+
ensureOn: [upInfra, resolveApp]
|
|
875
|
+
azure:
|
|
876
|
+
vaultSecretName: databases-miso-controller-1-passwordKeyVault
|
|
877
|
+
|
|
878
|
+
# Per-index database secrets. Index must match requires.databases order in application.yaml.
|
|
446
879
|
- keyPattern: '^databases-[a-z0-9-]+-\d+-urlKeyVault$'
|
|
447
880
|
scope: app
|
|
448
881
|
generator:
|
|
449
882
|
type: databaseUrl
|
|
450
883
|
ensureOn: [upInfra, resolveApp]
|
|
451
884
|
azure:
|
|
452
|
-
|
|
453
|
-
|
|
885
|
+
legacyVaultSecretNames:
|
|
886
|
+
- '{appKey}-databases-{index}-urlKeyVault'
|
|
887
|
+
notes: The direct manifest key is canonical; the app-prefixed form is migration-only.
|
|
454
888
|
|
|
455
889
|
- keyPattern: '^databases-[a-z0-9-]+-\d+-passwordKeyVault$'
|
|
456
890
|
scope: app
|
|
@@ -458,7 +892,8 @@ parameters:
|
|
|
458
892
|
type: databasePassword
|
|
459
893
|
ensureOn: [upInfra, resolveApp]
|
|
460
894
|
azure:
|
|
461
|
-
|
|
895
|
+
legacyVaultSecretNames:
|
|
896
|
+
- '{appKey}-databases-{index}-passwordKeyVault'
|
|
462
897
|
|
|
463
898
|
# Keycloak and other *-url keys (non-database).
|
|
464
899
|
- keyPattern: '^keycloak-.+-url$'
|