-
Notifications
You must be signed in to change notification settings - Fork 9.6k
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
Support (and test functionality) for AWS alternatives? #6535
Comments
This would be nice -- for remote state, if nothing else. e.g. I'm trying to use DreamHost Objects (S3) with the S3 remote state backend and failing miserably (and confusingly), even while other tools (e.g. s3cmd) work w/o issue. |
We were already using terraform up to version |
@vrenjith can you be a bit more specific about what checks are causing you troubles? (except the mentioned region name check) |
@radeksimko This is what is happening with Terraform with the latest version
This was not happening till version |
Just figured out that |
Was able to get this working by adding the following:
|
Hi, I have a patch to allow specifying a custom STS endpoint which I'm still testing but could send a PR for. |
Have a custom build in case anyone needs to skip the Validation of regions (I just commented that validation function) |
I'm coming across this and it's potentially a showstopper for my terraform implementation. If there was a skip_region_verify or something similar so it trusts that I know what I'm doing with my region name, it would at least get me to the point where I can feed endpoints in. |
Currently we are using a custom terraform with that function commented out.
|
I am in a similar boat. I have a rebuilt version of terraform with custom endpoints compiled into it, so the region validation passes, but it would be great if there was a skip_region_validation parameter. I also wish there was an eaiser way to set the CHECKPOINT_DISABLE. We may have to look to setting it's default in our rebuilt version of terraform. It would also be great if there was some consistency added to the endpoints map and the hard coded dynamodb_endpoint/kinesis_endpoint parameters. I would love for them to be accepted up into the endpoints map, instead of having to have two different 'styles' in place in the code |
We can close this as terraform now supports the flag
|
@vrenjith Agreed, thanks for the ping.
@Cinderhaze That is certainly something we can address, see #11768 Overall - based on the number of 👍 on this issue (1) - I feel that most folks have what they need in order to use terraform w/ AWS alternatives, so I'm going to close this in 2 weeks from now. This is just to give time to anyone who may want to jump in and disagree by presenting specific suggestions. Running nightly acceptance tests against such endpoints is unlikely to happen from our side as we expect such tests to be very flaky and the main focus is real APIs for now. |
Atlassian has https://github.com/atlassian/localstack if someone needs to simulate multiple AWS services. I haven't used it myself but it looks promising. |
from the doc, it seems that provider AWS does not yet support lambda and apigateway endpoints customization in the nested endpoints block. e.g.
It would be nice to match localstack service coverage ! Are there plan to add the ability to use custom endpoints for these 2 ? |
I'm going to lock this issue 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 similar to this, please open a new issue and complete the issue template so we can capture all the details necessary to investigate further. |
It seems that more people are asking for support of AWS-like alternatives - some supported/provided directly by AWS, some not, e.g.:
validate_credentials
option to provider-aws #6533The obvious issue is that alternatives won't be as much battle-tested as real APIs hence some false positives/negatives may occur. If we decide to run nightly acceptance tests against such endpoints, these should be completely separated from current setup and fixing bugs in those should probably has lower priority than real endpoints - i.e. we don't want to break integration with real AWS API to make something work with an alternative.
I still think it's worth supporting these though because it can lower the bar for potential contributors wanting to contribute tested code as they will be able to test it against local endpoints which is not going to cost 💰 💰 in most cases. Yes, there might be false positives/negatives, but it's IMO still better than untested code.
I personally think that developers should have access to a real AWS environment and be able to create real resources (which may cost money, yes - but that's about trust and potential IAM limitations and/or account limits). There will always be services which cannot be "mocked" locally - e.g. ECS, Lambda, CloudFront, EFS, RDS, ... and alternative implementations will inevitably lack behind the real official API.
I'm opening this issue to track interest and also to gather opinions from other maintainers.
The text was updated successfully, but these errors were encountered: