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
Upgrade to Terraform 0.12 #423
Conversation
* github.com/zclconf * github.com/hashicorp
I'm not comfortable putting an alpha |
Agreed, I just based my work on master because I wasn't sure about your workflow. But what if was released as an alpha version for the provider as well? After all terraform 0.12 should reach beta in a matter of days and brings some pretty major changes. |
@davetropeano can you chime in here? 🤘 |
Thank you @giorgioazzinnaro for the contribution. I'll sync with the dev team on our larger support for 0.12... in general we won't support alpha/beta -- it typically just isn't needed. |
Well, then I'd say, let's just keep this PR alive until 0.12 reaches GA and then we can further bump the SDK version to |
Not supporting Alpha makes sense but it would be very good to have support for the beta for those of us who want to start the work ahead of the GA. |
I would be wary of the effort moving to 0.12, even when its beta. The unanswered question in the Terraform forums is how much provider code breaks and how much dev resource is required to fix it. Interested users can always fork the existing provider, upgrade it and run the provider acceptance tests to understand the level of breakage. The IBM instructions for testing start here: https://github.com/IBM-Cloud/terraform-provider-ibm . Terraforms explanation is here: https://www.terraform.io/docs/extend/testing/acceptance-tests/index.html . This would be valuable information, without distracting dev from enhancing the existing provider. |
Shouldn't these acceptance tests become part of the Travis pipeline of this very project? |
The way Hashicorp have designed the test suite for a provider is that all tests run automatically. Linked into Travis any push would trigger the whole lot, which will run for hours and cost a fortune as any public push would trigger it! That is unless they are triggered manually. The real question is one of prioritisation of dev time and the level of resource committed to enhancing the provider. Today it is focused on new function and the existing code base. |
The upside is that this is an open source community and if people have a need to meet their use cases they are free to develop and contribute it themselves. Hashicorp have not made it easy using golang and the development guidance is limited. But there are lots of examples out there. I have a requirement for Cloud Internet Services DNS and global load balancers. I issued the PR yesterday for thousands of lines of code and several new resources, including writing the gloang SDK for the CIS API. It should be available in the next drop of the provider. There are lots of examples on the Internet and I plan to write up how to develop new resources for the IBM provider which should help others down the same path. Terraform 0.12 should be easier for the community to work with as its not writing new code. Fork the provider, govendor in the new Terraform libraries, recompile and run the test suites, find and fix what breaks. |
Now that Terraform 0.12 is in beta I think this is relevant again Since HashiCorp treats it as a major release, |
Since Terraform 0.12 is already GA, is there any plans to push this forward? |
@davetropeano can you provide an official response. |
To Steve's point we haven't scoped the PR or the internal work we need to do yet for 0.12. There are a number of IBM Cloud specific resources such as VPC support that are taking top priority. We will support v0.12 and will publish a timeline. As mentioned, our history with 0.10 and other major releases gives us pause. We feel it is more prudent to wait for the first patch dot release while starting to evaluate the GA -- which was just public 7 days ago. |
@davetropeano is there any place I can find a road map about when terraform 0.12.x will be supported? |
Right now this is scheduled for 1q2020. The public roadmap is in a GH project you can track here https://github.com/IBM-Cloud/terraform-provider-ibm/projects/1 |
closing this PR request ...As we already migrated to terraform v0.12 support |
Fixes #422
I've upgraded all the dependencies coming from
hashicorp
and that's it.The new plugin SDK takes care of the compatibility with the new version of Terraform.
I think I need some guidance for proper testing, maybe you have an environment in IBM Cloud specifically for this?