@@ -17,10 +17,18 @@ import (
1717 "k8s.io/client-go/kubernetes"
1818
1919 "github.com/aws/aws-sdk-go/aws"
20+ awscred "github.com/aws/aws-sdk-go/aws/credentials"
2021 "github.com/aws/aws-sdk-go/aws/session"
2122 "github.com/aws/aws-sdk-go/service/secretsmanager"
2223)
2324
25+ const (
26+ awsCredSecretName = "aws-creds"
27+ awsCredNamespace = "kube-system"
28+ awsCredAccessKeySecretKeyName = "aws_secret_access_key"
29+ awsCredKeyIdSecretKeyName = "aws_access_key_id"
30+ )
31+
2432type AssetFunc func (string ) ([]byte , error )
2533
2634// VerifyPodsReadyByPrefix checks if all pods matching the given prefixes are Ready and ContainersReady.
@@ -110,8 +118,27 @@ func WaitForESOResourceReady(
110118 })
111119}
112120
113- func DeleteAWSSecret (secretName , region string ) error {
121+ func fetchAWSCreds (ctx context.Context , k8sClient * kubernetes.Clientset ) (string , string , error ) {
122+ cred , err := k8sClient .CoreV1 ().Secrets (awsCredNamespace ).Get (ctx , awsCredSecretName , metav1.GetOptions {})
123+ if err != nil {
124+ return "" , "" , err
125+ }
126+ id := string (cred .Data [awsCredKeyIdSecretKeyName ])
127+ key := string (cred .Data [awsCredAccessKeySecretKeyName ])
128+ return id , key , nil
129+ }
130+
131+ func DeleteAWSSecret (ctx context.Context , k8sClient * kubernetes.Clientset , secretName , region string ) error {
132+ id , key , err := fetchAWSCreds (ctx , k8sClient )
133+ if err != nil {
134+ return err
135+ }
136+
114137 sess , err := session .NewSession (& aws.Config {
138+ Credentials : awscred .NewCredentials (& awscred.StaticProvider {Value : awscred.Value {
139+ AccessKeyID : id ,
140+ SecretAccessKey : key ,
141+ }}),
115142 Region : aws .String (region ),
116143 })
117144 if err != nil {
0 commit comments