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
feat: OpenTofu support #4499
base: main
Are you sure you want to change the base?
feat: OpenTofu support #4499
Conversation
I agree with the premise of this, and I like the solution, but I don't agree that it stops the need for hc-install - I think that is worthy of a discussion. I do not think your changes inherently conflict with the hc-install PR - it is very easy to do this for example
Especially as the I think if you are going to have separate interfaces for OpenTofu vs Terraform implementations, then a discussion on whether to use the same logic vs different logic for each Distribution should be had.
|
Thanks @james0209, that makes sense. I'd be happy to rebase this over the hc-install change. As you point out, that should be fairly straightforward. |
Due to wip status, I switched this to a draft as a non draft means that it's ready for review. Please set it as ready to review when ready. Thank you for the contribution |
what
This is an early attempt at getting OpenTofu to work with Atlantis. I thought I'd get open this PR sooner rather than later, as conflicts with #4494 and would be interested to see what people think or get any feedback.
I'm just starting to test this internally and have made some quick decisions in order to get it working:
--tf-distribution
setting that can be set toterraform
oropentofu
.--tf-download-url
server/core/terraform/terraform_client.go
for the Terraform distribution. This matches up with the--tf-distribution
setting. I'm not sure if this is the right place or the right abstraction, but seemed to be a relatively low effort place to implement it.I've done limited testing so far, but would like to get some feedback before I continue down the wrong rabbit hole.
why
#3741
tests
I've got them working for the new download method, but should also add some for the new OpenTofu code paths.
references
#3741