diff --git a/go.mod b/go.mod index 9297c5d0d..8f0c8e97e 100644 --- a/go.mod +++ b/go.mod @@ -21,7 +21,7 @@ require ( github.com/aws/aws-sdk-go-v2/config v1.32.7 github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.18.17 github.com/aws/aws-sdk-go-v2/service/acm v1.37.19 - github.com/aws/aws-sdk-go-v2/service/dynamodb v1.54.0 + github.com/aws/aws-sdk-go-v2/service/dynamodb v1.55.0 github.com/aws/aws-sdk-go-v2/service/secretsmanager v1.41.1 github.com/aws/aws-sdk-go-v2/service/ssm v1.67.8 github.com/coreos/go-systemd/v22 v22.6.0 diff --git a/go.sum b/go.sum index f79e60862..b5f0be29f 100644 --- a/go.sum +++ b/go.sum @@ -43,8 +43,8 @@ github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4 h1:WKuaxf++XKWlHWu9ECbMlha8WOEG github.com/aws/aws-sdk-go-v2/internal/ini v1.8.4/go.mod h1:ZWy7j6v1vWGmPReu0iSGvRiise4YI5SkR3OHKTZ6Wuc= github.com/aws/aws-sdk-go-v2/service/acm v1.37.19 h1:6BPfgg/Y4Pmrdr8KDwHx2CYkw8qPEaGQ+aixjuAY/0U= github.com/aws/aws-sdk-go-v2/service/acm v1.37.19/go.mod h1:mhOStWeEa1xP99WNNPstX75qgqWgJycL5H7UwZQbqbo= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.54.0 h1:SW3MUVGaqOv/h4spv3IubyGz9CpvE0gHWEJsZQNPFMs= -github.com/aws/aws-sdk-go-v2/service/dynamodb v1.54.0/go.mod h1:ctEsEHY2vFQc6i4KU07q4n68v7BAmTbujv2Y+z8+hQY= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.55.0 h1:CyYoeHWjVSGimzMhlL0Z4l5gLCa++ccnRJKrsaNssxE= +github.com/aws/aws-sdk-go-v2/service/dynamodb v1.55.0/go.mod h1:ctEsEHY2vFQc6i4KU07q4n68v7BAmTbujv2Y+z8+hQY= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.4 h1:0ryTNEdJbzUCEWkVXEXoqlXV72J5keC1GvILMOuD00E= github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.13.4/go.mod h1:HQ4qwNZh32C3CBeO6iJLQlgtMzqeG17ziAA/3KDJFow= github.com/aws/aws-sdk-go-v2/service/internal/endpoint-discovery v1.11.17 h1:Nhx/OYX+ukejm9t/MkWI8sucnsiroNYNGb5ddI9ungQ= diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/CHANGELOG.md index 84a6cc94a..7e3dc41a5 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/CHANGELOG.md @@ -1,3 +1,7 @@ +# v1.55.0 (2026-02-03) + +* **Feature**: This change supports the creation of multi-account global tables. It adds two new arguments to CreateTable, GlobalTableSourceArn and GlobalTableSettingsReplicationMode. DescribeTable is also updated to include information about GlobalTableSettingsReplicationMode. + # v1.54.0 (2026-01-22) * **Feature**: Adds additional waiters to Amazon DynamoDB. diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_CreateTable.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_CreateTable.go index 1d8a0254b..9334fe410 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_CreateTable.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_CreateTable.go @@ -46,55 +46,15 @@ func (c *Client) CreateTable(ctx context.Context, params *CreateTableInput, optF // Represents the input of a CreateTable operation. type CreateTableInput struct { - // An array of attributes that describe the key schema for the table and indexes. - // - // This member is required. - AttributeDefinitions []types.AttributeDefinition - - // Specifies the attributes that make up the primary key for a table or an index. - // The attributes in KeySchema must also be defined in the AttributeDefinitions - // array. For more information, see [Data Model]in the Amazon DynamoDB Developer Guide. - // - // Each KeySchemaElement in the array is composed of: - // - // - AttributeName - The name of this key attribute. - // - // - KeyType - The role that the key attribute will assume: - // - // - HASH - partition key - // - // - RANGE - sort key - // - // The partition key of an item is also known as its hash attribute. The term - // "hash attribute" derives from the DynamoDB usage of an internal hash function to - // evenly distribute data items across partitions, based on their partition key - // values. - // - // The sort key of an item is also known as its range attribute. The term "range - // attribute" derives from the way DynamoDB stores items with the same partition - // key physically close together, in sorted order by the sort key value. - // - // For a simple primary key (partition key), you must provide exactly one element - // with a KeyType of HASH . - // - // For a composite primary key (partition key and sort key), you must provide - // exactly two elements, in this order: The first element must have a KeyType of - // HASH , and the second element must have a KeyType of RANGE . - // - // For more information, see [Working with Tables] in the Amazon DynamoDB Developer Guide. - // - // [Data Model]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html - // [Working with Tables]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#WorkingWithTables.primary.key - // - // This member is required. - KeySchema []types.KeySchemaElement - // The name of the table to create. You can also provide the Amazon Resource Name // (ARN) of the table in this parameter. // // This member is required. TableName *string + // An array of attributes that describe the key schema for the table and indexes. + AttributeDefinitions []types.AttributeDefinition + // Controls how you are charged for read and write throughput and how you manage // capacity. This setting can be changed later. // @@ -119,7 +79,8 @@ type CreateTableInput struct { // - IndexName - The name of the global secondary index. Must be unique only for // this table. // - // - KeySchema - Specifies the key schema for the global secondary index. + // - KeySchema - Specifies the key schema for the global secondary index. Each + // global secondary index supports up to 4 partition keys and up to 4 sort keys. // // - Projection - Specifies attributes that are copied (projected) from the table // into the index. These are in addition to the primary key attributes and index @@ -148,6 +109,52 @@ type CreateTableInput struct { // secondary index, consisting of read and write capacity units. GlobalSecondaryIndexes []types.GlobalSecondaryIndex + // Controls the settings synchronization mode for the global table. For + // multi-account global tables, this parameter is required and the only supported + // value is ENABLED. For same-account global tables, this parameter is set to + // ENABLED_WITH_OVERRIDES. + GlobalTableSettingsReplicationMode types.GlobalTableSettingsReplicationMode + + // The Amazon Resource Name (ARN) of the source table used for the creation of a + // multi-account global table. + GlobalTableSourceArn *string + + // Specifies the attributes that make up the primary key for a table or an index. + // The attributes in KeySchema must also be defined in the AttributeDefinitions + // array. For more information, see [Data Model]in the Amazon DynamoDB Developer Guide. + // + // Each KeySchemaElement in the array is composed of: + // + // - AttributeName - The name of this key attribute. + // + // - KeyType - The role that the key attribute will assume: + // + // - HASH - partition key + // + // - RANGE - sort key + // + // The partition key of an item is also known as its hash attribute. The term + // "hash attribute" derives from the DynamoDB usage of an internal hash function to + // evenly distribute data items across partitions, based on their partition key + // values. + // + // The sort key of an item is also known as its range attribute. The term "range + // attribute" derives from the way DynamoDB stores items with the same partition + // key physically close together, in sorted order by the sort key value. + // + // For a simple primary key (partition key), you must provide exactly one element + // with a KeyType of HASH . + // + // For a composite primary key (partition key and sort key), you must provide + // exactly two elements, in this order: The first element must have a KeyType of + // HASH , and the second element must have a KeyType of RANGE . + // + // For more information, see [Working with Tables] in the Amazon DynamoDB Developer Guide. + // + // [Data Model]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DataModel.html + // [Working with Tables]: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/WorkingWithTables.html#WorkingWithTables.primary.key + KeySchema []types.KeySchemaElement + // One or more local secondary indexes (the maximum is 5) to be created on the // table. Each index is scoped to a given partition key value. There is a 10 GB // size limit per partition key value; otherwise, the size of a local secondary diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_ExportTableToPointInTime.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_ExportTableToPointInTime.go index 65f7de7f0..20e17a1e3 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_ExportTableToPointInTime.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/api_op_ExportTableToPointInTime.go @@ -53,7 +53,7 @@ type ExportTableToPointInTimeInput struct { // // If you submit a request with the same client token but a change in other // parameters within the 8-hour idempotency window, DynamoDB returns an - // ImportConflictException . + // ExportConflictException . ClientToken *string // The format for the exported data. Valid values for ExportFormat are diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/deserializers.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/deserializers.go index fdf566c4c..301daeaf0 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/deserializers.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/deserializers.go @@ -14387,6 +14387,15 @@ func awsAwsjson10_deserializeDocumentReplicaDescription(v **types.ReplicaDescrip return err } + case "GlobalTableSettingsReplicationMode": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GlobalTableSettingsReplicationMode to be of type string, got %T instead", value) + } + sv.GlobalTableSettingsReplicationMode = types.GlobalTableSettingsReplicationMode(jtv) + } + case "KMSMasterKeyId": if value != nil { jtv, ok := value.(string) @@ -16045,6 +16054,15 @@ func awsAwsjson10_deserializeDocumentTableDescription(v **types.TableDescription return err } + case "GlobalTableSettingsReplicationMode": + if value != nil { + jtv, ok := value.(string) + if !ok { + return fmt.Errorf("expected GlobalTableSettingsReplicationMode to be of type string, got %T instead", value) + } + sv.GlobalTableSettingsReplicationMode = types.GlobalTableSettingsReplicationMode(jtv) + } + case "GlobalTableVersion": if value != nil { jtv, ok := value.(string) diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/endpoints.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/endpoints.go index afaaca494..a504652be 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/endpoints.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/endpoints.go @@ -454,10 +454,10 @@ func (r *resolver) ResolveEndpoint( SchemeID: "aws.auth#sigv4", SignerProperties: func() smithy.Properties { var sp smithy.Properties - smithyhttp.SetSigV4SigningRegion(&sp, "us-east-1") - smithyhttp.SetSigV4SigningName(&sp, "dynamodb") smithyhttp.SetSigV4ASigningName(&sp, "dynamodb") + + smithyhttp.SetSigV4SigningRegion(&sp, "us-east-1") return sp }(), }, diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/go_module_metadata.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/go_module_metadata.go index bc61647af..229f0af6b 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/go_module_metadata.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/go_module_metadata.go @@ -3,4 +3,4 @@ package dynamodb // goModuleVersion is the tagged release for this module -const goModuleVersion = "1.54.0" +const goModuleVersion = "1.55.0" diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/serializers.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/serializers.go index 366d52966..53fd3ed7d 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/serializers.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/serializers.go @@ -5805,6 +5805,16 @@ func awsAwsjson10_serializeOpDocumentCreateTableInput(v *CreateTableInput, value } } + if len(v.GlobalTableSettingsReplicationMode) > 0 { + ok := object.Key("GlobalTableSettingsReplicationMode") + ok.String(string(v.GlobalTableSettingsReplicationMode)) + } + + if v.GlobalTableSourceArn != nil { + ok := object.Key("GlobalTableSourceArn") + ok.String(*v.GlobalTableSourceArn) + } + if v.KeySchema != nil { ok := object.Key("KeySchema") if err := awsAwsjson10_serializeDocumentKeySchema(v.KeySchema, ok); err != nil { diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/enums.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/enums.go index 47d43d57e..c9beca869 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/enums.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/enums.go @@ -411,6 +411,28 @@ func (ExportViewType) Values() []ExportViewType { } } +type GlobalTableSettingsReplicationMode string + +// Enum values for GlobalTableSettingsReplicationMode +const ( + GlobalTableSettingsReplicationModeEnabled GlobalTableSettingsReplicationMode = "ENABLED" + GlobalTableSettingsReplicationModeDisabled GlobalTableSettingsReplicationMode = "DISABLED" + GlobalTableSettingsReplicationModeEnabledWithOverrides GlobalTableSettingsReplicationMode = "ENABLED_WITH_OVERRIDES" +) + +// Values returns all known values for GlobalTableSettingsReplicationMode. Note +// that this can be expanded in the future, and so it is only as up to date as the +// client. +// +// The ordering of this slice is not guaranteed to be stable across updates. +func (GlobalTableSettingsReplicationMode) Values() []GlobalTableSettingsReplicationMode { + return []GlobalTableSettingsReplicationMode{ + "ENABLED", + "DISABLED", + "ENABLED_WITH_OVERRIDES", + } +} + type GlobalTableStatus string // Enum values for GlobalTableStatus diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/errors.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/errors.go index 45bf62b57..3774a406e 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/errors.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/errors.go @@ -959,8 +959,7 @@ func (e *ThrottlingException) ErrorFault() smithy.ErrorFault { return smithy.Fau // // - There is a user error, such as an invalid data format. // -// If using Java, DynamoDB lists the cancellation reasons on the -// CancellationReasons property. This property is not set for other languages. +// DynamoDB lists the cancellation reasons on the CancellationReasons property. // Transaction cancellation reasons are ordered in the order of requested items, if // an item has no error it will have None code and Null message. // diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/types.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/types.go index ce3801ef9..dde699b08 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/types.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/types/types.go @@ -947,7 +947,8 @@ type CreateGlobalSecondaryIndexAction struct { // This member is required. IndexName *string - // The key schema for the global secondary index. + // The key schema for the global secondary index. Global secondary index supports + // up to 4 partition and up to 4 sort keys. // // This member is required. KeySchema []KeySchemaElement @@ -2622,6 +2623,19 @@ type ReplicaDescription struct { // Replica-specific global secondary index settings. GlobalSecondaryIndexes []ReplicaGlobalSecondaryIndexDescription + // Indicates one of the settings synchronization modes for the global table + // replica: + // + // - ENABLED : Indicates that the settings synchronization mode for the global + // table replica is enabled. + // + // - DISABLED : Indicates that the settings synchronization mode for the global + // table replica is disabled. + // + // - ENABLED_WITH_OVERRIDES : This mode is set by default for a same account + // global table. Indicates that certain global table settings can be overridden. + GlobalTableSettingsReplicationMode GlobalTableSettingsReplicationMode + // The KMS key of the replica that will be used for KMS encryption. KMSMasterKeyId *string @@ -3337,6 +3351,18 @@ type TableDescription struct { // returned. GlobalSecondaryIndexes []GlobalSecondaryIndexDescription + // Indicates one of the settings synchronization modes for the global table: + // + // - ENABLED : Indicates that the settings synchronization mode for the global + // table is enabled. + // + // - DISABLED : Indicates that the settings synchronization mode for the global + // table is disabled. + // + // - ENABLED_WITH_OVERRIDES : This mode is set by default for a same account + // global table. Indicates that certain global table settings can be overridden. + GlobalTableSettingsReplicationMode GlobalTableSettingsReplicationMode + // Represents the version of [global tables] in use, if the table is replicated across Amazon Web // Services Regions. // diff --git a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/validators.go b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/validators.go index 781ef41cf..cd5187a30 100644 --- a/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/validators.go +++ b/vendor/github.com/aws/aws-sdk-go-v2/service/dynamodb/validators.go @@ -2668,9 +2668,7 @@ func validateOpCreateTableInput(v *CreateTableInput) error { return nil } invalidParams := smithy.InvalidParamsError{Context: "CreateTableInput"} - if v.AttributeDefinitions == nil { - invalidParams.Add(smithy.NewErrParamRequired("AttributeDefinitions")) - } else if v.AttributeDefinitions != nil { + if v.AttributeDefinitions != nil { if err := validateAttributeDefinitions(v.AttributeDefinitions); err != nil { invalidParams.AddNested("AttributeDefinitions", err.(smithy.InvalidParamsError)) } @@ -2678,9 +2676,7 @@ func validateOpCreateTableInput(v *CreateTableInput) error { if v.TableName == nil { invalidParams.Add(smithy.NewErrParamRequired("TableName")) } - if v.KeySchema == nil { - invalidParams.Add(smithy.NewErrParamRequired("KeySchema")) - } else if v.KeySchema != nil { + if v.KeySchema != nil { if err := validateKeySchema(v.KeySchema); err != nil { invalidParams.AddNested("KeySchema", err.(smithy.InvalidParamsError)) } diff --git a/vendor/modules.txt b/vendor/modules.txt index 2fcf3909d..8765640f1 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -91,7 +91,7 @@ github.com/aws/aws-sdk-go-v2/internal/ini github.com/aws/aws-sdk-go-v2/service/acm github.com/aws/aws-sdk-go-v2/service/acm/internal/endpoints github.com/aws/aws-sdk-go-v2/service/acm/types -# github.com/aws/aws-sdk-go-v2/service/dynamodb v1.54.0 +# github.com/aws/aws-sdk-go-v2/service/dynamodb v1.55.0 ## explicit; go 1.23 github.com/aws/aws-sdk-go-v2/service/dynamodb github.com/aws/aws-sdk-go-v2/service/dynamodb/internal/customizations