-
Notifications
You must be signed in to change notification settings - Fork 17
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The SDK had to be manually regenerated because an empty string was added to the CFN schema of the `AWS::IVS::Channel.Preset" enum: ``` "Preset" : { "description" : "Optional transcode preset for the channel. This is selectable only for ADVANCED_HD and ADVANCED_SD channel types. For those channel types, the default preset is HIGHER_BANDWIDTH_DELIVERY. For other channel types (BASIC and STANDARD), preset is the empty string (\"\").", "type" : "string", "enum" : [ "", "HIGHER_BANDWIDTH_DELIVERY", "CONSTRAINED_BANDWIDTH_DELIVERY" ] } ``` The [CloudFormation docs](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ivs-channel.html#cfn-ivs-channel-preset) and [AWS CLI docs](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ivs/create-channel.html) mention that the allowed values are `HIGHER_BANDWIDTH_DELIVERY`, `CONSTRAINED_BANDWIDTH_DELIVERY`. But the empty string is also allowed and it's the default the IVS service sets internally (and returns) when a channel type is used that doesn't allow configuring a preset. This change adds a special condition to the schema generator to create an enum value called `Empty` with an underlying value of `""`. We cannot omit this empty enum value as this would break SDKs that verify whether an enum value is valid (e.g. python). Fixes #1674
- Loading branch information
1 parent
ca05204
commit 2a5e0ca
Showing
105 changed files
with
5,469 additions
and
169 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
c0dceef1a3949735a691d57e38d7d615941e6d8b | ||
abe8eadc17c1700e7af9dc26ce0371aedca7c5eb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,105 +1,154 @@ | ||
{ | ||
"typeName" : "AWS::Glue::Database", | ||
"description" : "Resource Type definition for AWS::Glue::Database", | ||
"sourceUrl" : "https://github.com/aws-cloudformation/aws-cloudformation-resource-providers-glue.git", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"CatalogId" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The AWS account ID for the account in which to create the catalog object." | ||
}, | ||
"DatabaseInput" : { | ||
"$ref" : "#/definitions/DatabaseInput" | ||
"$ref" : "#/definitions/DatabaseInput", | ||
"description" : "The metadata for the database." | ||
}, | ||
"Id" : { | ||
"type" : "string" | ||
"DatabaseName" : { | ||
"type" : "string", | ||
"description" : "The name of the database. For hive compatibility, this is folded to lowercase when it is store." | ||
} | ||
}, | ||
"definitions" : { | ||
"DatabaseIdentifier" : { | ||
"type" : "object", | ||
"description" : "A structure that describes a target database for resource linking.", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"DatabaseName" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The name of the catalog database." | ||
}, | ||
"Region" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "Region of the target database." | ||
}, | ||
"CatalogId" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The ID of the Data Catalog in which the database resides." | ||
} | ||
} | ||
}, | ||
"PrincipalPrivileges" : { | ||
"type" : "object", | ||
"description" : "The permissions granted to a principal.", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"Permissions" : { | ||
"type" : "array", | ||
"description" : "The permissions that are granted to the principal.", | ||
"uniqueItems" : false, | ||
"insertionOrder" : false, | ||
"items" : { | ||
"type" : "string" | ||
} | ||
}, | ||
"Principal" : { | ||
"$ref" : "#/definitions/DataLakePrincipal" | ||
"$ref" : "#/definitions/DataLakePrincipal", | ||
"description" : "The principal who is granted permissions." | ||
} | ||
} | ||
}, | ||
"DataLakePrincipal" : { | ||
"type" : "object", | ||
"description" : "The AWS Lake Formation principal.", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"DataLakePrincipalIdentifier" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "An identifier for the AWS Lake Formation principal." | ||
} | ||
} | ||
}, | ||
"FederatedDatabase" : { | ||
"type" : "object", | ||
"description" : "A FederatedDatabase structure that references an entity outside the AWS Glue Data Catalog.", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"ConnectionName" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The name of the connection to the external metastore." | ||
}, | ||
"Identifier" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "A unique identifier for the federated database." | ||
} | ||
} | ||
}, | ||
"DatabaseInput" : { | ||
"type" : "object", | ||
"description" : "The structure used to create or update a database.", | ||
"additionalProperties" : false, | ||
"properties" : { | ||
"LocationUri" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The location of the database (for example, an HDFS path)." | ||
}, | ||
"CreateTableDefaultPermissions" : { | ||
"type" : "array", | ||
"description" : "Creates a set of default permissions on the table for principals. Used by AWS Lake Formation. Not used in the normal course of AWS Glue operations.", | ||
"uniqueItems" : false, | ||
"insertionOrder" : false, | ||
"items" : { | ||
"$ref" : "#/definitions/PrincipalPrivileges" | ||
"$ref" : "#/definitions/PrincipalPrivileges", | ||
"description" : "The permissions granted to a principal." | ||
} | ||
}, | ||
"Description" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "A description of the database." | ||
}, | ||
"Parameters" : { | ||
"type" : "object" | ||
"type" : "object", | ||
"description" : "These key-value pairs define parameters and properties of the database." | ||
}, | ||
"TargetDatabase" : { | ||
"$ref" : "#/definitions/DatabaseIdentifier" | ||
"$ref" : "#/definitions/DatabaseIdentifier", | ||
"description" : "A DatabaseIdentifier structure that describes a target database for resource linking." | ||
}, | ||
"FederatedDatabase" : { | ||
"$ref" : "#/definitions/FederatedDatabase" | ||
"$ref" : "#/definitions/FederatedDatabase", | ||
"description" : "A FederatedDatabase structure that references an entity outside the AWS Glue Data Catalog." | ||
}, | ||
"Name" : { | ||
"type" : "string" | ||
"type" : "string", | ||
"description" : "The name of the database. For hive compatibility, this is folded to lowercase when it is stored." | ||
} | ||
} | ||
} | ||
}, | ||
"tagging" : { | ||
"taggable" : false, | ||
"tagOnCreate" : false, | ||
"tagUpdatable" : false, | ||
"cloudFormationSystemTags" : false | ||
}, | ||
"required" : [ "DatabaseInput", "CatalogId" ], | ||
"createOnlyProperties" : [ "/properties/CatalogId" ], | ||
"primaryIdentifier" : [ "/properties/Id" ], | ||
"readOnlyProperties" : [ "/properties/Id" ] | ||
"createOnlyProperties" : [ "/properties/DatabaseName" ], | ||
"primaryIdentifier" : [ "/properties/DatabaseName" ], | ||
"handlers" : { | ||
"create" : { | ||
"permissions" : [ "glue:CreateDatabase", "glue:GetDatabase", "glue:PassConnection", "glue:CreateConnection", "lakeformation:ListResources", "lakeformation:DescribeResource", "lakeformation:DescribeLakeFormationIdentityCenterConfiguration" ] | ||
}, | ||
"read" : { | ||
"permissions" : [ "glue:GetDatabase", "glue:GetConnection", "lakeformation:ListResources", "lakeformation:DescribeResource", "lakeformation:DescribeLakeFormationIdentityCenterConfiguration" ] | ||
}, | ||
"update" : { | ||
"permissions" : [ "glue:UpdateDatabase", "glue:UpdateConnection", "lakeformation:ListResources", "lakeformation:DescribeResource", "lakeformation:DescribeLakeFormationIdentityCenterConfiguration" ] | ||
}, | ||
"delete" : { | ||
"permissions" : [ "glue:DeleteDatabase", "glue:GetDatabase", "glue:DeleteConnection", "glue:GetConnection", "lakeformation:ListResources", "lakeformation:DescribeResource", "lakeformation:DescribeLakeFormationIdentityCenterConfiguration" ] | ||
}, | ||
"list" : { | ||
"permissions" : [ "glue:GetDatabases", "lakeformation:ListResources", "lakeformation:DescribeResource", "lakeformation:DescribeLakeFormationIdentityCenterConfiguration" ] | ||
} | ||
} | ||
} |
Oops, something went wrong.