Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aws-sdk-go-v2 - v1.3.0 #602

Merged
merged 1 commit into from
Oct 4, 2021

Conversation

smcavallo
Copy link
Contributor

@smcavallo smcavallo commented Mar 21, 2021

Description of your changes

aws-sdk-go-v2 latest - https://github.com/aws/aws-sdk-go-v2/releases/tag/v1.3.0

go 1.16 supported for providers as part of upbound/build#140

Fixes #

#383

I have:

  • Read and followed Crossplane's contribution process.
  • Run make reviewable test to ensure this PR is ready for review.

How has this code been tested

Unit tests only

@smcavallo smcavallo changed the title WIP: aws-sdk-go-v2 - v1.3.0 aws-sdk-go-v2 - v1.3.0 Mar 22, 2021
@muvaf muvaf self-assigned this Mar 25, 2021
@muvaf muvaf removed their assignment Mar 25, 2021
Copy link
Member

@muvaf muvaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you both @enderv and @smcavallo for driving this huge PR!

apis/ec2/v1beta1/referencers.go Outdated Show resolved Hide resolved
apis/ec2/v1beta1/referencers.go Outdated Show resolved Hide resolved
pkg/clients/acm/certificate.go Outdated Show resolved Hide resolved
pkg/clients/acm/certificate.go Outdated Show resolved Hide resolved
pkg/clients/acm/certificate.go Outdated Show resolved Hide resolved
pkg/clients/aws.go Outdated Show resolved Hide resolved
}
config, err := external.LoadDefaultAWSConfig(shared)
return &config, err
return &cfg, err
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will defer to @hasheddan for reviewing these authentication parts.

if awsErr, ok := err.(awserr.Error); ok {
return awserr.New(awsErr.Code(), awsErr.Message(), nil)
}
// TODO cvodak revisit this
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FWIW, we cannot merge without handling this.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would you be able to test whether we need this for this v2 SDK? The reason we have it is to remove the request id from the error so that we don't get re-queued immediately since there is a change at every reconcile. If v2 errors don't contain a unique request id, then it might be fine not to have any handling here.

@@ -18,49 +18,49 @@ package cloudformation

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this pkg/clients/cloudformation folder is remnant of old EKS cluster creation. We can delete the whole folder as it's not used anywhere.

pkg/clients/dbsubnetgroup/dbsubnetgroup.go Outdated Show resolved Hide resolved
@chlunde
Copy link
Collaborator

chlunde commented Apr 19, 2021

Wow, this is a huge PR, I had not seen it. I wonder if provider-aws should have a freeze until this is merged? I suspect it would be hard to prevent loosing commits/bug fixes or get merge conflict related bugs. if we don't get this in soon.

I'm sure you already have thought about a plan here, but I think it might be a good idea to communicate it with a pinned issue. Will there be a release first, and then focus on this before allowing further changes?

@muvaf
Copy link
Member

muvaf commented Apr 22, 2021

@chlunde I don't think we have a written plan but having a release -> merging this -> having another release right after that could be a good idea.

I wonder if provider-aws should have a freeze until this is merged?

Most changes coming into provider-aws are code-generated resources which use v1 SDK, so I don't think we need a freeze for PRs.

apis/ec2/v1beta1/referencers.go Outdated Show resolved Hide resolved
if awsErr, ok := err.(awserr.Error); ok {
return awserr.New(awsErr.Code(), awsErr.Message(), nil)
}
// TODO cvodak revisit this
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Would you be able to test whether we need this for this v2 SDK? The reason we have it is to remove the request id from the error so that we don't get re-queued immediately since there is a change at every reconcile. If v2 errors don't contain a unique request id, then it might be fine not to have any handling here.

@janwillies
Copy link
Contributor

@chlunde I don't think we have a written plan but having a release -> merging this -> having another release right after that could be a good idea.

seeing that 0.19 was released a few days ago, maybe now is a good time? It would unblock a few things for us (e.g. #610, #338 )

@annabarnes1138
Copy link

What is the plan for merging this?

@muvaf
Copy link
Member

muvaf commented Sep 28, 2021

Thanks for pushing an update @smcavallo ! The PR was waiting an action from me but I couldn't get to it for quite a while, having a month-long leave in between.

I'll review as soon as possible.

Copy link
Member

@muvaf muvaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@smcavallo seems like there are compilation errors, some of them because of the diff lines added by git during resolution conflict. Could you make sure no error is thrown when you run make reviewable?

@@ -1,3 +1,5 @@

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we need to update build submodule to latest to so that crd cleanup runs properly to delete these two lines.

}
}
}
if db.PendingModifiedValues != nil {
o.PendingModifiedValues = v1beta1.PendingModifiedValues{
<<<<<<< HEAD
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a remnant from merge conflict resolution that we need to remove.

@@ -73,6 +75,9 @@ func GenerateCreateCertificateInput(name string, p *v1alpha1.CertificateParamete
}

// GenerateCertificateStatus is used to produce CertificateExternalStatus from acm.certificateStatus
<<<<<<< HEAD
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is remnant from the conflict resolution we need to remove.

@haarchri
Copy link
Member

haarchri commented Oct 2, 2021

we need this also to support Spot Instances for EKS #228

Copy link
Member

@muvaf muvaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll merge this PR and open another small one to fix the issues so that we get the rebasing stuff out of the way.

@enderv @smcavallo Thank you so much for this PR! It's a great contribution that will unblock many use cases users have been waiting for 🙂

@muvaf muvaf merged commit f282891 into crossplane-contrib:master Oct 4, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants