{ "$ref": "#/definitions/IReplacementsConfig", "$schema": "http://json-schema.org/draft-07/schema#", "definitions": { "IParameterReplacement": { "additionalProperties": false, "description": "Fixed replacement value to apply throughout config files. Loaded from SSM\nparameters in the management account in the HOME_REGION.", "properties": { "key": { "$ref": "#/definitions/NonEmptyString", "description": "Key of the replacement placeholder" }, "path": { "$ref": "#/definitions/NonEmptyString", "description": "Path of the SSM Parameter containing the value to replace" } }, "required": [ "key", "path" ], "type": "object" }, "IParameterReplacementV2": { "additionalProperties": false, "description": "Fixed replacement value to apply throughout config files. Loaded from SSM\nparameters in the management account in the HOME_REGION.", "properties": { "key": { "$ref": "#/definitions/NonEmptyString", "description": "Key of the replacement placeholder" }, "path": { "$ref": "#/definitions/NonEmptyString", "description": "Path of the SSM Parameter containing the value to replace" }, "type": { "$ref": "#/definitions/ParameterReplacementType", "description": "Type of the global parameters" }, "value": { "anyOf": [ { "$ref": "#/definitions/NonEmptyString" }, { "items": { "$ref": "#/definitions/NonEmptyString" }, "type": "array" }, { "type": "number" } ], "description": "Value of the parameter if type is string or array" } }, "required": [ "key", "type" ], "type": "object" }, "IReplacementsConfig": { "additionalProperties": false, "description": "Accelerator replacements configuration", "properties": { "globalReplacements": { "description": "The set of placeholder parameters (key/path pairs) that will be merged with yaml configuration files.", "items": { "anyOf": [ { "$ref": "#/definitions/IParameterReplacement" }, { "$ref": "#/definitions/IParameterReplacementV2" } ] }, "type": "array" } }, "type": "object", "patternProperties": { "^\\.": { "description": "YAML anchor" } } }, "NonEmptyString": { "description": "## Non-Empty String Type\n\nRepresents a string that must contain at least one character. Used for required text fields throughout the Landing Zone Accelerator configuration where empty values are not permitted.\n\n```", "minLength": 1, "type": "string" }, "ParameterReplacementType": { "description": "## Parameter Replacement Type\n\nDefines the types of parameter replacement mechanisms supported in configuration templates and CloudFormation deployments.\n\n### Values\n- **SSM**: AWS Systems Manager Parameter Store values\n- **String**: Simple string replacement\n- **StringList**: Comma-separated list of strings\n- **Number**: Numeric value replacement\n\n### Use Cases\n- **SSM**: Dynamic configuration values, secrets, cross-stack references\n- **String**: Static configuration values, environment names\n- **StringList**: Multiple values like subnet IDs, security group IDs\n- **Number**: Port numbers, counts, numeric thresholds", "enum": [ "SSM", "String", "StringList", "Number" ], "type": "string" } } }