Skip to content

Commit 191a56f

Browse files
debug debug
1 parent a9358f4 commit 191a56f

File tree

2 files changed

+32
-1
lines changed

2 files changed

+32
-1
lines changed

test/e2e/shared/aws.go

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ import (
4545
iamtypes "github.com/aws/aws-sdk-go-v2/service/iam/types"
4646
"github.com/aws/aws-sdk-go-v2/service/sts"
4747
"github.com/aws/aws-sdk-go/aws"
48+
"github.com/aws/aws-sdk-go/aws/awserr"
4849
"github.com/aws/aws-sdk-go/aws/client"
4950
awscreds "github.com/aws/aws-sdk-go/aws/credentials"
5051
"github.com/aws/aws-sdk-go/aws/session"
@@ -774,9 +775,35 @@ func deleteCloudFormationStack(prov client.ConfigProvider, t *cfn_bootstrap.Temp
774775
}
775776

776777
func ensureTestImageUploaded(e2eCtx *E2EContext) error {
778+
By("ensureTestImageUploaded: Creating AWS session for ECR Public")
777779
sessionForRepo := NewAWSSessionRepoWithKey(e2eCtx.Environment.BootstrapAccessKey)
778780

781+
if sess, ok := sessionForRepo.(*session.Session); ok {
782+
creds, err := sess.Config.Credentials.Get()
783+
if err != nil {
784+
By(fmt.Sprintf("ensureTestImageUploaded: Failed to get credentials from session: %v", err))
785+
return fmt.Errorf("failed to get credentials: %w", err)
786+
}
787+
By(fmt.Sprintf("ensureTestImageUploaded: Session credentials - AccessKeyId: %s, ProviderName: %s",
788+
creds.AccessKeyID, creds.ProviderName))
789+
} else {
790+
By("ensureTestImageUploaded: WARNING: Session is not *session.Session type")
791+
}
792+
779793
ecrSvc := ecrpublic.New(sessionForRepo)
794+
795+
By("ensureTestImageUploaded: Testing ECR Public connection")
796+
_, err := ecrSvc.DescribeRegistries(&ecrpublic.DescribeRegistriesInput{})
797+
if err != nil {
798+
By(fmt.Sprintf("ensureTestImageUploaded: Failed to connect to ECR Public: %v", err))
799+
if awsErr, ok := err.(awserr.Error); ok {
800+
By(fmt.Sprintf("ensureTestImageUploaded: AWS Error - Code: %s, Message: %s",
801+
awsErr.Code(), awsErr.Message()))
802+
}
803+
return fmt.Errorf("failed to connect to ECR Public: %w", err)
804+
}
805+
By("ensureTestImageUploaded: Successfully connected to ECR Public")
806+
780807
repoName := ""
781808
if err := wait.WaitForWithRetryable(wait.NewBackoff(), func() (bool, error) {
782809
output, err := ecrSvc.CreateRepository(&ecrpublic.CreateRepositoryInput{
@@ -807,7 +834,7 @@ func ensureTestImageUploaded(e2eCtx *E2EContext) error {
807834
cmd := exec.Command("docker", "inspect", "--format='{{index .Id}}'", "gcr.io/k8s-staging-cluster-api/capa-manager:e2e")
808835
var stdOut bytes.Buffer
809836
cmd.Stdout = &stdOut
810-
err := cmd.Run()
837+
err = cmd.Run()
811838
if err != nil {
812839
return err
813840
}

test/e2e/shared/suite.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,10 @@ func Node1BeforeSuite(e2eCtx *E2EContext) []byte {
158158
e2eCtx.Environment.BootstrapAccessKey = newUserAccessKey(context.TODO(), e2eCtx.AWSSessionV2, bootstrapTemplate.Spec.BootstrapUser.UserName)
159159
e2eCtx.BootstrapUserAWSSession = NewAWSSessionWithKey(e2eCtx.Environment.BootstrapAccessKey)
160160
e2eCtx.BootstrapUserAWSSessionV2 = NewAWSSessionWithKeyV2(e2eCtx.Environment.BootstrapAccessKey)
161+
162+
By("Waiting for access key to propagate...")
163+
time.Sleep(10 * time.Second)
164+
161165
Expect(ensureTestImageUploaded(e2eCtx)).NotTo(HaveOccurred())
162166

163167
// Image ID is needed when using a CI Kubernetes version. This is used in conformance test and upgrade to main test.

0 commit comments

Comments
 (0)