We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
2 parents 031a050 + 0ad2ae7 commit a2acca8Copy full SHA for a2acca8
.build-tools/go.mod
@@ -12,7 +12,7 @@ require (
12
)
13
14
require (
15
- github.com/dapr/kit v0.15.3-0.20250717140748-8b780b4d81c5 // indirect
+ github.com/dapr/kit v0.16.1 // indirect
16
github.com/fxamacker/cbor/v2 v2.7.0 // indirect
17
github.com/gogo/protobuf v1.3.2 // indirect
18
github.com/iancoleman/orderedmap v0.0.0-20190318233801-ac98e3ecb4b0 // indirect
.build-tools/go.sum
@@ -1,6 +1,6 @@
1
github.com/cpuguy83/go-md2man/v2 v2.0.2/go.mod h1:tgQtvFlXSQOSOSIRvRPT7W67SCa46tRHOmNcaadrF8o=
2
-github.com/dapr/kit v0.15.3-0.20250717140748-8b780b4d81c5 h1:Q26gmPxs6WnnBYoudOlznPHsmrbTawcYEpHg4VoB7v8=
3
-github.com/dapr/kit v0.15.3-0.20250717140748-8b780b4d81c5/go.mod h1:40ZWs5P6xfYf7O59XgwqZkIyDldTIXlhTQhGop8QoSM=
+github.com/dapr/kit v0.16.1 h1:MqLAhHVg8trPy2WJChMZFU7ToeondvxcNHYVvMDiVf4=
+github.com/dapr/kit v0.16.1/go.mod h1:40ZWs5P6xfYf7O59XgwqZkIyDldTIXlhTQhGop8QoSM=
4
github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
5
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc h1:U9qPSI2PIWSS1VwoXQT9A3Wy9MM3WgvqSxFWenqJduM=
6
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
.github/infrastructure/docker-compose-cassandra.yml
@@ -2,7 +2,7 @@ version: '2'
services:
cassandra:
- image: docker.io/bitnami/cassandra:4.1
+ image: docker.io/bitnamilegacy/cassandra:4.1
ports:
7
- '7000:7000'
8
- '9042:9042'
common/component/kafka/clients.go
@@ -22,6 +22,10 @@ func (k *Kafka) latestClients() (*clients, error) {
22
23
// case 1: use aws clients with refreshable tokens in the cfg
24
case k.awsConfig != nil:
25
+ if k.clients != nil {
26
+ return k.clients, nil
27
+ }
28
+
29
awsKafkaOpts := KafkaOptions{
30
Config: k.config,
31
ConsumerGroup: k.consumerGroup,
@@ -34,10 +38,12 @@ func (k *Kafka) latestClients() (*clients, error) {
34
38
if err != nil {
35
39
return nil, fmt.Errorf("failed to get AWS IAM Kafka clients: %w", err)
36
40
}
37
- return &clients{
41
42
+ k.clients = &clients{
43
consumerGroup: awsKafkaClients.ConsumerGroup,
44
producer: awsKafkaClients.Producer,
- }, nil
45
46
47
48
// case 2: normal static auth profile clients
49
default:
common/component/kafka/kafka.go
@@ -295,12 +295,16 @@ func (k *Kafka) ValidateAWS(metadata map[string]string) (awsAuth.Options, error)
295
296
297
return awsAuth.Options{
298
+ Logger: k.logger,
299
Region: region,
300
AccessKey: accessKey,
301
SecretKey: secretKey,
302
AssumeRoleArn: role,
303
AssumeRoleSessionName: session,
304
SessionToken: token,
305
+ TrustAnchorArn: metadata["trustAnchorArn"],
306
+ TrustProfileArn: metadata["trustProfileArn"],
307
+ Properties: metadata,
308
}, nil
309
310
common/component/kafka/kafka_test.go
@@ -520,6 +520,14 @@ func TestValidateAWS(t *testing.T) {
520
AssumeRoleArn: "testRoleArn",
521
AssumeRoleSessionName: "testSessionName",
522
SessionToken: "testSessionToken",
523
+ Properties: map[string]string{
524
+ "region": "us-east-1",
525
+ "accessKey": "testAccessKey",
526
+ "secretKey": "testSecretKey",
527
+ "assumeRoleArn": "testRoleArn",
528
+ "sessionName": "testSessionName",
529
+ "sessionToken": "testSessionToken",
530
+ },
531
},
532
err: nil,
533
@@ -540,6 +548,14 @@ func TestValidateAWS(t *testing.T) {
540
548
AssumeRoleArn: "awsRoleArn",
541
549
AssumeRoleSessionName: "awsSessionName",
542
550
SessionToken: "awsSessionToken",
551
552
+ "awsRegion": "us-west-2",
553
+ "awsAccessKey": "awsAccessKey",
554
+ "awsSecretKey": "awsSecretKey",
555
+ "awsIamRoleArn": "awsRoleArn",
556
+ "awsStsSessionName": "awsSessionName",
557
+ "awsSessionToken": "awsSessionToken",
558
543
559
544
560
545
561
go.mod
@@ -64,7 +64,7 @@ require (
64
github.com/cloudwego/kitex-examples v0.1.1
65
github.com/cyphar/filepath-securejoin v0.2.4
66
github.com/dancannon/gorethink v4.0.0+incompatible
67
- github.com/dapr/kit v0.15.3-0.20250717140748-8b780b4d81c5
+ github.com/dapr/kit v0.16.1
68
github.com/didip/tollbooth/v7 v7.0.1
69
github.com/eclipse/paho.mqtt.golang v1.4.3
70
github.com/fasthttp-contrib/sessions v0.0.0-20160905201309-74f6ac73d5d5
go.sum
@@ -516,8 +516,8 @@ github.com/dancannon/gorethink v4.0.0+incompatible h1:KFV7Gha3AuqT+gr0B/eKvGhbjm
516
github.com/dancannon/gorethink v4.0.0+incompatible/go.mod h1:BLvkat9KmZc1efyYwhz3WnybhRZtgF1K929FD8z1avU=
517
github.com/danieljoos/wincred v1.1.2 h1:QLdCxFs1/Yl4zduvBdcHB8goaYk9RARS2SgLLRuAyr0=
518
github.com/danieljoos/wincred v1.1.2/go.mod h1:GijpziifJoIBfYh+S7BbkdUTU4LfM+QnGqR5Vl2tAx0=
519
github.com/dave/jennifer v1.4.0/go.mod h1:fIb+770HOpJ2fmN9EPPKOqm1vMGhB+TwXKMZhrIygKg=
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
secretstores/aws/secretmanager/secretmanager.go
@@ -25,6 +25,7 @@ import (
"github.com/dapr/components-contrib/metadata"
"github.com/dapr/components-contrib/secretstores"
"github.com/dapr/kit/logger"
+ kitmd "github.com/dapr/kit/metadata"
const (
@@ -177,17 +178,11 @@ func (s *smSecretStore) BulkGetSecret(ctx context.Context, req secretstores.Bulk
177
178
179
180
func (s *smSecretStore) getSecretManagerMetadata(spec secretstores.Metadata) (*SecretManagerMetaData, error) {
- b, err := json.Marshal(spec.Properties)
181
- if err != nil {
182
- return nil, err
183
- }
184
-
185
var meta SecretManagerMetaData
186
- err = json.Unmarshal(b, &meta)
+ err := kitmd.DecodeMetadata(spec.Properties, &meta)
187
188
return nil, err
189
190
191
return &meta, nil
192
193
secretstores/aws/secretmanager/secretmanager_test.go
@@ -499,3 +499,23 @@ func TestGetFeatures(t *testing.T) {
499
assert.Empty(t, f)
500
})
501
502
503
+func TestGetSecretManagerMetadata(t *testing.T) {
504
+ s := &smSecretStore{
505
+ logger: logger.NewLogger("test"),
506
507
508
+ t.Run("parse multipleKeyValuesPerSecret as string", func(t *testing.T) {
509
+ metadata := secretstores.Metadata{}
510
+ metadata.Properties = map[string]string{
511
512
+ "accessKey": "test",
513
+ "secretKey": "test",
514
+ "multipleKeyValuesPerSecret": "true",
515
+ meta, err := s.getSecretManagerMetadata(metadata)
+ require.NoError(t, err)
+ assert.True(t, meta.MultipleKeyValuesPerSecret)
+ })
+}
0 commit comments