I had originally left ModuleVersion's ModulePackage field out of the "required" fields in the schema because it was causing issues with contract tests (i.e. contract tests would fail when attempting a delete operation because the module package field was required, but cannot be read in DescribeType requests and supplied to the delete handler #318). I had temporarily implemented manual validation in the ModuleVersion create handler to check for ModulePackage to compensate.
After building, running the unit tests, and testing these changes manually in my account through a number of create-, update-, and delete-stack operations, I am confident setting ModulePackage as "required" is safe, despite being flagged by the contract tests for the above reason. ModulePackage is not required as input to the delete handler -- only the ARN is.
With this change, the AWS::CloudFormation::ModuleVersion documentation will now agree with the schema as well.
I also added ModuleName to createOnlyProperties, as it should have been.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
I had originally left
ModuleVersion
'sModulePackage
field out of the "required" fields in the schema because it was causing issues with contract tests (i.e. contract tests would fail when attempting a delete operation because the module package field was required, but cannot be read inDescribeType
requests and supplied to the delete handler #318). I had temporarily implemented manual validation in theModuleVersion
create handler to check forModulePackage
to compensate.After building, running the unit tests, and testing these changes manually in my account through a number of create-, update-, and delete-stack operations, I am confident setting
ModulePackage
as "required" is safe, despite being flagged by the contract tests for the above reason.ModulePackage
is not required as input to the delete handler -- only the ARN is.With this change, the
AWS::CloudFormation::ModuleVersion
documentation will now agree with the schema as well.I also added
ModuleName
tocreateOnlyProperties
, as it should have been.By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.