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

Add S3 Connection Attributes to DMS Endpoint #17591

Merged
merged 2 commits into from
Aug 17, 2021

Conversation

sbrandtb
Copy link
Contributor

Adds a few commonly used parameters to the explicit S3 connection block.

Please note that IMO, we should not default those settings because they are defaulted on AWS side. However, the API is a bit inconsistent in which properties the API returns on GET if the resource was not created with particular resources (i.e.
parquet_timestamp_in_millisecond is always returned, data_format is not if it was not explicitly used for creation, yet it defaults to csv. In order to make tests and usage of the provider a bit more sane, I defaulted all properties.

Please also note that, if you test this and try to update extra connection attributes that it does not trigger an update of the resource. This is not a bug introduced with this pull request. It exists in current main.

Community Note

  • Please vote on this pull request by adding a 👍 reaction to the original pull request comment to help the community and maintainers prioritize this request
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for pull request followers and do not help prioritize the request

Output from acceptance testing:

 $ make testacc TESTARGS='-run=TestAccAwsDmsEndpoint_S3'    
==> Checking that code complies with gofmt requirements...                                                
TF_ACC=1 go test ./aws -v -count 1 -parallel 20 -run=TestAccAwsDmsEndpoint_S3 -timeout 120m               
=== RUN   TestAccAwsDmsEndpoint_S3            
=== PAUSE TestAccAwsDmsEndpoint_S3                   
=== RUN   TestAccAwsDmsEndpoint_S3_ExtraConnectionAttributes           
=== PAUSE TestAccAwsDmsEndpoint_S3_ExtraConnectionAttributes                                              
=== CONT  TestAccAwsDmsEndpoint_S3                 
=== CONT  TestAccAwsDmsEndpoint_S3_ExtraConnectionAttributes
--- PASS: TestAccAwsDmsEndpoint_S3_ExtraConnectionAttributes (63.72s)                                     
--- PASS: TestAccAwsDmsEndpoint_S3 (108.84s)
PASS                                   
ok      github.com/terraform-providers/terraform-provider-aws/aws       108.966s 

...

@sbrandtb sbrandtb requested a review from a team as a code owner February 12, 2021 13:17
@ghost ghost added size/M Managed by automation to categorize the size of a PR. documentation Introduces or discusses updates to documentation. service/databasemigrationservice tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure. labels Feb 12, 2021
@github-actions github-actions bot added the needs-triage Waiting for first response or review from a maintainer. label Feb 12, 2021
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

Welcome @sbrandtb 👋

It looks like this is your first Pull Request submission to the Terraform AWS Provider! If you haven’t already done so please make sure you have checked out our CONTRIBUTING guide and FAQ to make sure your contribution is adhering to best practice and has all the necessary elements in place for a successful approval.

Also take a look at our FAQ which details how we prioritize Pull Requests for inclusion.

Thanks again, and welcome to the community! 😃

@sbrandtb
Copy link
Contributor Author

sbrandtb commented Mar 2, 2021

Added two more properties and updated tests.

@YakDriver
Copy link
Member

Related #14340
Related #14620
Related #18750

@YakDriver YakDriver removed the needs-triage Waiting for first response or review from a maintainer. label Apr 14, 2021
@sbrandtb
Copy link
Contributor Author

I want to note that I am slightly disappointed by this pull request being open for more than three months now with seven upvotes while for instance #19371 got merged after a few days with only one, while the official statement is that upvotes is how you prioritize pull requests.

I was planning to contribute more after this, but honestly after waiting for three months without any official feedback, I am more than demotivated.

@anGie44 anGie44 self-assigned this May 27, 2021
@anGie44 anGie44 added the enhancement Requests to existing resources that expand the functionality or scope. label May 27, 2021
@sbrandtb sbrandtb removed the request for review from a team June 2, 2021 08:14
Copy link
Contributor

@anGie44 anGie44 left a comment

Choose a reason for hiding this comment

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

Hi @sbrandtb , thank you for this PR and apologies for the wait! Please note that having a PR linked to an existing Github issue is recommended to ensure visibility for maintainers. Overall, looks great just a couple comments to address. Also, please add a .changelog/17591.txt file to this PR in accordance with our guidelines seen here: https://github.com/hashicorp/terraform-provider-aws/blob/main/docs/contributing/pullrequest-submission-and-lifecycle.md#changelog-process.

Please reach out if you have any additional questions. If you are not readily available to submit the requested changes, not a problem! Feel free to drop us a note and we'll continue the work you have here 😃

aws/resource_aws_dms_endpoint.go Outdated Show resolved Hide resolved
aws/resource_aws_dms_endpoint.go Outdated Show resolved Hide resolved
aws/resource_aws_dms_endpoint.go Outdated Show resolved Hide resolved
aws/resource_aws_dms_endpoint_test.go Outdated Show resolved Hide resolved
aws/resource_aws_dms_endpoint_test.go Outdated Show resolved Hide resolved
website/docs/r/dms_endpoint.html.markdown Outdated Show resolved Hide resolved
website/docs/r/dms_endpoint.html.markdown Outdated Show resolved Hide resolved
@anGie44 anGie44 added the waiting-response Maintainers are waiting on response from community or contributor. label Jun 3, 2021
@sbrandtb
Copy link
Contributor Author

sbrandtb commented Jun 8, 2021

Thanks for the re-review :) I did not test it yet myself, just wanted to show activity 😆 Will work on that later this week.

@anGie44
Copy link
Contributor

anGie44 commented Jun 8, 2021

No worries @sbrandtb , appreciate the efforts!
Reach out when ready :)

@anGie44
Copy link
Contributor

anGie44 commented Jun 16, 2021

Hi @sbrandtb , just checking in to see how things are going. Anything I can help with?

@sbrandtb
Copy link
Contributor Author

I'll be working on it tomorrow. Sorry for the delay.

Adds a few commonly used parameters to the explicit S3 connection block.

Please note that IMO, we should not default those settings because they
are defaulted on AWS side. However, the API is a bit inconsistent in
which properties the API returns on GET if the resource was not
_created_ with particular resources (i.e.
`parquet_timestamp_in_millisecond` is always returned, `data_format` is
not if it was not explicitly used for creation, yet it defaults to
`csv`.

In order to make tests and usage of the provider a bit more sane, I
defaulted all properties.
@anGie44 anGie44 removed the waiting-response Maintainers are waiting on response from community or contributor. label Aug 17, 2021
@anGie44 anGie44 added this to the v3.55.0 milestone Aug 17, 2021
Copy link
Contributor

@anGie44 anGie44 left a comment

Choose a reason for hiding this comment

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

Hi @sbrandtb , thank you for all your changes! This enhancement LGTM 🚀

Output of acceptance tests (commercial):

--- PASS: TestAccAwsDmsEndpoint_Elasticsearch_ExtraConnectionAttributes (171.26s)
--- PASS: TestAccAwsDmsEndpoint_Elasticsearch (171.49s)
--- PASS: TestAccAwsDmsEndpoint_Elasticsearch_ErrorRetryDuration (171.50s)
--- PASS: TestAccAwsDmsEndpoint_Elasticsearch_FullLoadErrorPercentage (171.60s)
--- PASS: TestAccAwsDmsEndpoint_S3_ExtraConnectionAttributes (171.72s)
--- PASS: TestAccAwsDmsEndpoint_MongoDb (188.12s)
--- PASS: TestAccAwsDmsEndpoint_Kafka_Broker (223.91s)
--- PASS: TestAccAwsDmsEndpoint_Kafka_Topic (224.03s)
--- PASS: TestAccAwsDmsEndpoint_DocDB (231.87s)
--- PASS: TestAccAwsDmsEndpoint_basic (231.95s)
--- PASS: TestAccAwsDmsEndpoint_Db2 (232.09s)
--- PASS: TestAccAwsDmsEndpoint_DynamoDb (234.65s)
--- PASS: TestAccAwsDmsEndpoint_S3 (234.95s)
--- PASS: TestAccAwsDmsEndpoint_MongoDb_Update (237.47s)
--- PASS: TestAccAwsDmsEndpoint_Kinesis (253.79s)

@anGie44 anGie44 merged commit e3f2951 into hashicorp:main Aug 17, 2021
@sbrandtb sbrandtb deleted the dms_s3_options branch August 18, 2021 13:31
@github-actions
Copy link

This functionality has been released in v3.55.0 of the Terraform AWS Provider. Please see the Terraform documentation on provider versioning or reach out if you need any assistance upgrading.

For further feature requests or bug reports with this functionality, please create a new GitHub issue following the template. Thank you!

@github-actions
Copy link

I'm going to lock this pull request because it has been closed for 30 days ⏳. This helps our maintainers find and focus on the active issues.
If you have found a problem that seems related to this change, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 19, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
documentation Introduces or discusses updates to documentation. enhancement Requests to existing resources that expand the functionality or scope. size/M Managed by automation to categorize the size of a PR. tests PRs: expanded test coverage. Issues: expanded coverage, enhancements to test infrastructure.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants