Skip to content

Commit c62f3e4

Browse files
committed
Add more context to aws config using Kafka.Provider parent
1 parent 931089f commit c62f3e4

File tree

3 files changed

+28
-21
lines changed

3 files changed

+28
-21
lines changed

docs/config.md

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -73,11 +73,12 @@ ACHGateway:
7373
TLS: <boolean>
7474
AutoCommit: <boolean>
7575
[ SASLMechanism: <string> | default = "PLAIN" ]
76-
AWS:
77-
[ Region: <string> | default = "" ]
78-
[ Profile: <string> | default = "" ]
79-
[ RoleARN: <string> | default = "" ]
80-
[ SessionName: <string> | default = "" ]
76+
Provider:
77+
AWS:
78+
[ Region: <string> | default = "" ]
79+
[ Profile: <string> | default = "" ]
80+
[ RoleARN: <string> | default = "" ]
81+
[ SessionName: <string> | default = "" ]
8182
Transform:
8283
Encoding:
8384
[ Base64: <boolean> | default = false ]
@@ -163,11 +164,12 @@ ACHGateway:
163164
[ TLS: <boolean> | default = false ]
164165
[ AutoCommit: <boolean> | default = false ]
165166
[ SASLMechanism: <string> | default = "PLAIN" ]
166-
AWS:
167-
[ Region: <string> | default = "" ]
168-
[ Profile: <string> | default = "" ]
169-
[ RoleARN: <string> | default = "" ]
170-
[ SessionName: <string> | default = "" ]
167+
Provider:
168+
AWS:
169+
[ Region: <string> | default = "" ]
170+
[ Profile: <string> | default = "" ]
171+
[ RoleARN: <string> | default = "" ]
172+
[ SessionName: <string> | default = "" ]
171173
Webhook:
172174
[ Endpoint: <string> | default = "" ]
173175
```

internal/kafka/kafka.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -54,12 +54,12 @@ func OpenTopic(logger log.Logger, cfg *service.KafkaConfig) (*pubsub.Topic, erro
5454

5555
switch cfg.SASLMechanism {
5656
case "AWS_MSK_IAM":
57-
if cfg.AWS != nil {
57+
if cfg.Provider != nil && cfg.Provider.AWS != nil {
5858
config.Net.SASL.TokenProvider = &MSKAccessTokenProvider{
59-
Region: cfg.AWS.Region,
60-
Profile: cfg.AWS.Profile,
61-
RoleARN: cfg.AWS.RoleARN,
62-
SessionName: cfg.AWS.SessionName,
59+
Region: cfg.Provider.AWS.Region,
60+
Profile: cfg.Provider.AWS.Profile,
61+
RoleARN: cfg.Provider.AWS.RoleARN,
62+
SessionName: cfg.Provider.AWS.SessionName,
6363
}
6464
}
6565
config.Net.SASL.Mechanism = sarama.SASLTypeOAuth
@@ -98,12 +98,12 @@ func OpenSubscription(logger log.Logger, cfg *service.KafkaConfig) (*pubsub.Subs
9898
// Default to PLAIN if no SASL mechanism is specified
9999
switch cfg.SASLMechanism {
100100
case "AWS_MSK_IAM":
101-
if cfg.AWS != nil {
101+
if cfg.Provider != nil && cfg.Provider.AWS != nil {
102102
config.Net.SASL.TokenProvider = &MSKAccessTokenProvider{
103-
Region: cfg.AWS.Region,
104-
Profile: cfg.AWS.Profile,
105-
RoleARN: cfg.AWS.RoleARN,
106-
SessionName: cfg.AWS.SessionName,
103+
Region: cfg.Provider.AWS.Region,
104+
Profile: cfg.Provider.AWS.Profile,
105+
RoleARN: cfg.Provider.AWS.RoleARN,
106+
SessionName: cfg.Provider.AWS.SessionName,
107107
}
108108
}
109109
config.Net.SASL.Mechanism = sarama.SASLTypeOAuth

internal/service/model_inbound.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,11 @@ type AWSConfig struct {
7575
SessionName string
7676
}
7777

78+
// KafkaProvider represents the cloud provider settings for Kafka
79+
type KafkaProvider struct {
80+
AWS *AWSConfig
81+
}
82+
7883
type KafkaConfig struct {
7984
Brokers []string
8085
Key string
@@ -89,7 +94,7 @@ type KafkaConfig struct {
8994
AutoCommit bool
9095
SASLMechanism string
9196

92-
AWS *AWSConfig
97+
Provider *KafkaProvider
9398

9499
Consumer KafkaConsumerConfig
95100
Producer KafkaProducerConfig

0 commit comments

Comments
 (0)