Skip to content

Commit c21606a

Browse files
CloudFormation Resource Provider Definition MetaSchema update (#789)
Co-authored-by: PatMyron <PatMyron@users.noreply.github.com>
1 parent 919a6e4 commit c21606a

File tree

1 file changed

+15
-9
lines changed

1 file changed

+15
-9
lines changed

src/rpdk/core/data/schema/provider.definition.schema.v1.json

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
},
3131
"replacementStrategy": {
3232
"type": "string",
33-
"description": "The valid replacement strategies are create_then_delete and delete_then_create. All other inputs are invalid.",
33+
"description": "The valid replacement strategies are [create_then_delete] and [delete_then_create]. All other inputs are invalid.",
3434
"default": "create_then_delete",
3535
"enum": [
3636
"create_then_delete",
@@ -113,12 +113,8 @@
113113
],
114114
"$ref": "base.definition.schema.v1.json#/definitions/httpsUrl"
115115
},
116-
"replacementStrategy": {
117-
"$comment": "The order of replacement for an immutable resource update.",
118-
"$ref": "#/definitions/replacementStrategy"
119-
},
120116
"taggable": {
121-
"$comment": "(Deprecated, please use new metadata attribute tagging) A boolean flag indicating whether this resource type supports tagging.",
117+
"description": "(Deprecated, please use new metadata attribute tagging) A boolean flag indicating whether this resource type supports tagging.",
122118
"type": "boolean",
123119
"default": true
124120
},
@@ -156,6 +152,10 @@
156152
],
157153
"additionalProperties": false
158154
},
155+
"replacementStrategy": {
156+
"$comment": "The order of replacement for an immutable resource update.",
157+
"$ref": "#/definitions/replacementStrategy"
158+
},
159159
"additionalProperties": {
160160
"$comment": "All properties of a resource must be expressed in the schema - arbitrary inputs are not allowed",
161161
"$ref": "base.definition.schema.v1.json#/properties/additionalProperties"
@@ -166,9 +166,6 @@
166166
"definitions": {
167167
"$ref": "base.definition.schema.v1.json#/properties/definitions"
168168
},
169-
"propertyTransform": {
170-
"$ref": "base.definition.schema.v1.json#/properties/propertyTransform"
171-
},
172169
"handlers": {
173170
"description": "Defines the provisioning operations which can be performed on this resource type",
174171
"type": "object",
@@ -251,6 +248,15 @@
251248
"description": "A template-able link to a resource instance. AWS-internal service links must be relative to the AWS console domain. External service links must be absolute, HTTPS URIs.",
252249
"$ref": "#/definitions/resourceLink"
253250
},
251+
"propertyTransform": {
252+
"description": "A map which allows resource owners to define a function for a property with possible transformation. This property helps ensure the input to the model is equal to output",
253+
"type": "object",
254+
"patternProperties": {
255+
"^[A-Za-z0-9]{1,64}$": {
256+
"type": "string"
257+
}
258+
}
259+
},
254260
"typeConfiguration": {
255261
"description": "TypeConfiguration to set the configuration data for registry types. This configuration data is not passed through the resource properties in template. One of the possible use cases is configuring auth keys for 3P resource providers.",
256262
"$ref": "provider.configuration.definition.schema.v1.json"

0 commit comments

Comments
 (0)