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

[Enhancement]: Add AZURESQL to Glue Connection Type #37233

Open
fshskadz opened this issue May 2, 2024 · 5 comments · May be fixed by #37731
Open

[Enhancement]: Add AZURESQL to Glue Connection Type #37233

fshskadz opened this issue May 2, 2024 · 5 comments · May be fixed by #37731
Labels
enhancement Requests to existing resources that expand the functionality or scope. service/glue Issues and PRs that pertain to the glue service.

Comments

@fshskadz
Copy link

fshskadz commented May 2, 2024

Terraform Core Version

1.5.6

AWS Provider Version

5.47.0

Affected Resource(s)

  • aws_glue_connection

Expected Behavior

Accepts all allowed connection types

Actual Behavior

Does not allow AZURESQL connection type

Relevant Error/Panic Output Snippet

│ Error: expected connection_type to be one of ["JDBC" "SFTP" "MONGODB" "KAFKA" "NETWORK" "MARKETPLACE" "CUSTOM"], got AZURESQL

Terraform Configuration Files


resource "aws_glue_connection" "Reporting" {
  connection_properties = {
    JDBC_CONNECTION_URL = "jdbc:sqlserver://server1.database.windows.net;databaseName=mydb;Persist Security Info=True;"
    SECRET_ID           = data.aws_secretsmanager_secret.dev.name
  }

  connection_type = "AZURESQL"
  name            = "Reporting"

  physical_connection_requirements {
    security_group_id_list = [var.security_group_id]
    subnet_id              = var.subnet_id
    availability_zone      = var.availability_zone
  }

Steps to Reproduce

Use AZURESQL as the connection_type

Debug Output

No response

Panic Output

No response

Important Factoids

No response

References

No response

Would you like to implement a fix?

No

@fshskadz fshskadz added the bug Addresses a defect in current functionality. label May 2, 2024
Copy link

github-actions bot commented May 2, 2024

Community Note

Voting for Prioritization

  • Please vote on this issue by adding a 👍 reaction to the original post to help the community and maintainers prioritize this request.
  • Please see our prioritization guide for information on how we prioritize.
  • Please do not leave "+1" or other comments that do not add relevant new information or questions, they generate extra noise for issue followers and do not help prioritize the request.

Volunteering to Work on This Issue

  • If you are interested in working on this issue, please leave a comment.
  • If this would be your first contribution, please review the contribution guide.

@github-actions github-actions bot added the service/glue Issues and PRs that pertain to the glue service. label May 2, 2024
@terraform-aws-provider terraform-aws-provider bot added the needs-triage Waiting for first response or review from a maintainer. label May 2, 2024
@justinretzolk justinretzolk added enhancement Requests to existing resources that expand the functionality or scope. and removed bug Addresses a defect in current functionality. needs-triage Waiting for first response or review from a maintainer. labels May 2, 2024
@acwwat
Copy link
Contributor

acwwat commented May 5, 2024

This is a bit of a strange issue. The AWS API and downstream client docs all indicate that only several connection types are supported when I can see 21 in the AWS Management Console. When I create an Azure SQL connection in the console, CloudTrail shows that it is passing AZURESQL as the value for ConnectionType. This seems like a huge miss that AWS shouldn't have, but you never know. I opened an AWS support case to inquire about it - if I receive any updates I'll add another comment.

@acwwat
Copy link
Contributor

acwwat commented May 20, 2024

Here's an update after going back and forth with AWS support for two weeks.

Basically they confirmed that the list of supported values for ConnectionType is not complete, and the following values are missing from the documentation and the enum:

AZURESQL, SNOWFLAKE, OPENSEARCH, AZURECOSMOS, BIGQUERY

AWS is still working on updating the documentation, however I am less confident about them triggering the downstream updates to the SDKs. The support person seems to be evasive with my questions on getting someone to fix the SDKs as well.

Since the resource code is validating against the enum, we can either wait or manually append these values to a slice to at least add the support. That should be easy enough, however acceptance tests will be difficult as it involves third-party solutions. @justinretzolk, wonder if you could weigh in and see what the best approach is with dealing with this issue.

Meanwhile I'll continue to push to get an answer on downstream SDK updates with the proper values.

@fshskadz
Copy link
Author

@acwwat - Thank you so much for putting so much effort in!

@acwwat
Copy link
Contributor

acwwat commented May 28, 2024

Additional back-and-forth with AWS support has not been productive and I was basically told to talk to my account manager because AWS support does not have access to product roadmaps. They won't even acknowledge that they've communicated the need to update the downstream SDKs, so I will take that as a no...

Instead of punishing end-users for this bug, I've decided to just work around the problem by adding the supported values and cross checking with the API requests from creating the connections in the Console. Will be submitting a PR shortly.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Requests to existing resources that expand the functionality or scope. service/glue Issues and PRs that pertain to the glue service.
Projects
None yet
3 participants