@varde-flyt/vfac 0.17.0 → 0.18.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/dist/vfac.mjs +29 -6
- package/package.json +1 -1
package/dist/vfac.mjs
CHANGED
|
@@ -14216,7 +14216,7 @@ function exampleResourceKey(name) {
|
|
|
14216
14216
|
const slug = name.toLowerCase().replace(/[^a-z0-9]+/g, "-").replace(/^[^a-z]+/, "").replace(/-+$/, "").slice(0, 63);
|
|
14217
14217
|
return RESOURCE_KEY_PATTERN.test(slug) ? slug : "";
|
|
14218
14218
|
}
|
|
14219
|
-
var DEPLOYMENT_EXAMPLE_GUARANTEE = "Product-owned configuration is complete and E2E-proven; tenant-specific secrets and Resource/provider selections are supplied by the tenant.";
|
|
14219
|
+
var DEPLOYMENT_EXAMPLE_GUARANTEE = "Product-owned configuration is complete and E2E-proven; tenant-specific secrets, tenant-specific values and Resource/provider selections are supplied by the tenant.";
|
|
14220
14220
|
|
|
14221
14221
|
// ../product-configuration/dist/configuration-requirements.js
|
|
14222
14222
|
function configurationRequirements(configuration) {
|
|
@@ -15077,6 +15077,7 @@ function isBlockedHost(hostname) {
|
|
|
15077
15077
|
}
|
|
15078
15078
|
|
|
15079
15079
|
// ../product-contracts/dist/deployment-example.schema.js
|
|
15080
|
+
var MAX_TENANT_INPUTS = 8;
|
|
15080
15081
|
var DeploymentExampleSchema = external_exports.object({
|
|
15081
15082
|
/** The heading a customer reads above the example. */
|
|
15082
15083
|
title: external_exports.string().min(3).max(80),
|
|
@@ -15105,12 +15106,29 @@ var DeploymentExampleSchema = external_exports.object({
|
|
|
15105
15106
|
* created and again only to set a new one — and never written into a
|
|
15106
15107
|
* manifest. A secret resent on an unchanged re-apply is written again.
|
|
15107
15108
|
*/
|
|
15108
|
-
secretInputs: external_exports.array(external_exports.string().regex(CONFIGURATION_PROPERTY_NAME_REGEX)).max(MAX_CONFIGURATION_CHILDREN).optional()
|
|
15109
|
-
|
|
15109
|
+
secretInputs: external_exports.array(external_exports.string().regex(CONFIGURATION_PROPERTY_NAME_REGEX)).max(MAX_CONFIGURATION_CHILDREN).optional(),
|
|
15110
|
+
/**
|
|
15111
|
+
* The ordinary — NOT secret — settings the tenant answers, BY NAME.
|
|
15112
|
+
*
|
|
15113
|
+
* A value only the tenant can know and nothing may default: the address of
|
|
15114
|
+
* the person who administers the Resource first. The example carries NO
|
|
15115
|
+
* value for one — the document a reader copies carries it present and
|
|
15116
|
+
* empty, and the tenant types it — so an example applied unchanged is
|
|
15117
|
+
* refused for that setting by name rather than deployed with a placeholder.
|
|
15118
|
+
* Unlike a secret, the value belongs in the manifest.
|
|
15119
|
+
*
|
|
15120
|
+
* Each must be a setting every deployment must answer, with no default, that
|
|
15121
|
+
* no other rule reads: whether the example is complete cannot depend on a
|
|
15122
|
+
* value the publisher never gave.
|
|
15123
|
+
*/
|
|
15124
|
+
tenantInputs: external_exports.array(external_exports.string().regex(CONFIGURATION_PROPERTY_NAME_REGEX)).max(MAX_TENANT_INPUTS).optional()
|
|
15125
|
+
}).strict().describe("The recommended deployment for this release. Required for a NEW release; optional in the schema because releases published before the field existed are immutable. " + DEPLOYMENT_EXAMPLE_GUARANTEE + " Secret settings are named in secretInputs and never given a value here; so are the ordinary settings the tenant answers, named in tenantInputs.");
|
|
15110
15126
|
var SECRET_INPUT_SEGMENT = CONFIGURATION_PROPERTY_NAME_REGEX.source.slice(1, -1);
|
|
15111
|
-
var
|
|
15112
|
-
message:
|
|
15127
|
+
var settingInputV2Schema = (what) => external_exports.string().regex(new RegExp(`^(?:${SECRET_INPUT_SEGMENT}|(?:/${SECRET_INPUT_SEGMENT}){2,${MAX_CONFIGURATION_DEPTH}})$`)).refine((raw) => secretPathOf(raw) !== null, {
|
|
15128
|
+
message: `A ${what} is a root setting name, or a configuration path such as "/group/setting" with no list index.`
|
|
15113
15129
|
});
|
|
15130
|
+
var SecretInputV2Schema = settingInputV2Schema("secret input");
|
|
15131
|
+
var TenantInputV2Schema = settingInputV2Schema("tenant input");
|
|
15114
15132
|
var DeploymentExampleV2Schema = DeploymentExampleSchema.extend({
|
|
15115
15133
|
/**
|
|
15116
15134
|
* The secret settings a deployment of this example supplies, BY CANONICAL
|
|
@@ -15120,7 +15138,12 @@ var DeploymentExampleV2Schema = DeploymentExampleSchema.extend({
|
|
|
15120
15138
|
* here, so a reader knows every `--secret` flag the create needs before
|
|
15121
15139
|
* running it. The values are the tenant's and never written into a manifest.
|
|
15122
15140
|
*/
|
|
15123
|
-
secretInputs: external_exports.array(SecretInputV2Schema).max(MAX_CONFIGURATION_CHILDREN).optional()
|
|
15141
|
+
secretInputs: external_exports.array(SecretInputV2Schema).max(MAX_CONFIGURATION_CHILDREN).optional(),
|
|
15142
|
+
/**
|
|
15143
|
+
* The ordinary settings the tenant answers, BY CANONICAL PATH —
|
|
15144
|
+
* `/administrator/email`. See the v1 field; only the spelling differs.
|
|
15145
|
+
*/
|
|
15146
|
+
tenantInputs: external_exports.array(TenantInputV2Schema).max(MAX_TENANT_INPUTS).optional()
|
|
15124
15147
|
});
|
|
15125
15148
|
|
|
15126
15149
|
// ../product-contracts/dist/portfolio.js
|