Skip to content

Commit f6f1faf

Browse files
authored
Ecr role login (#1495)
* ecr role based login * added log statement * Added region to session * credentials based access for ec2role * handled empty creds case * removed sensitive information from log
1 parent 6d9bb0d commit f6f1faf

File tree

1 file changed

+34
-4
lines changed

1 file changed

+34
-4
lines changed

internal/util/EcrService.go

Lines changed: 34 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,49 @@ import (
2222
"github.com/aws/aws-sdk-go/aws"
2323
"github.com/aws/aws-sdk-go/aws/awserr"
2424
"github.com/aws/aws-sdk-go/aws/credentials"
25+
"github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds"
2526
"github.com/aws/aws-sdk-go/aws/session"
2627
"github.com/aws/aws-sdk-go/service/ecr"
2728
"github.com/juju/errors"
29+
"log"
2830
)
2931

3032
//FIXME: this code is temp
3133
func CreateEcrRepo(repoName string, reg string, accessKey string, secretKey string) error {
3234
region := reg
33-
credentials := credentials.NewStaticCredentials(accessKey, secretKey, "")
34-
svc := ecr.New(session.New(&aws.Config{
35+
//fmt.Printf("repoName %s, reg %s, accessKey %s, secretKey %s\n", repoName, reg, accessKey, secretKey)
36+
37+
var creds *credentials.Credentials
38+
39+
if len(accessKey) == 0 || len(secretKey) == 0 {
40+
//fmt.Println("empty accessKey or secretKey")
41+
sess, err := session.NewSession(&aws.Config{
42+
Region: &region,
43+
})
44+
if err != nil {
45+
log.Println(err)
46+
return err
47+
}
48+
creds = ec2rolecreds.NewCredentials(sess)
49+
} else {
50+
creds = credentials.NewStaticCredentials(accessKey, secretKey, "")
51+
}
52+
53+
sess, err := session.NewSession(&aws.Config{
3554
Region: &region,
36-
Credentials: credentials,
37-
}))
55+
Credentials: creds,
56+
})
57+
if err != nil {
58+
log.Println(err)
59+
return err
60+
}
61+
62+
svc := ecr.New(sess)
63+
64+
if err != nil {
65+
log.Println(err)
66+
return err
67+
}
3868
input := &ecr.CreateRepositoryInput{
3969
RepositoryName: aws.String(repoName),
4070
}

0 commit comments

Comments
 (0)