Releases: openshift-metal3/terraform-provider-ironic
v0.4.0: Error handling and retry improvements
What's Changed
- Improve error handling by @dtantsur in #66
- Bump golang.org/x/text from 0.3.7 to 0.3.8 by @dependabot in #75
- Bump github.com/prometheus/client_golang from 1.11.0 to 1.11.1 by @dependabot in #74
- Bump golang.org/x/net from 0.0.0-20211112202133-69e39bad7dc2 to 0.7.0 by @dependabot in #76
- OCPBUGS-8237: rework inspect/clean workflows to avoid an inner loop by @dtantsur in #77
- Replace Travis with Github Actions by @dtantsur in #78
- Actually fix the CI workflow by @dtantsur in #79
Full Changelog: v0.3.0...v0.4.0
v0.3.0: Dependencies updates
- Bump Go version to 1.18
- Bump terraform SDK to 2.0
v0.2.8: BIOS and RAID configuration
- Support RAID and BIOS configuration for masters
- CI fixes
v0.2.7: Add deployment customization via deploy_steps (#52)
* Add deploy_steps support * Re-vendor to add support for deploy_steps
v0.2.6: Handle capabilities in instance_info (#51)
This commit adds a parser for capabilities when they are defined in instance_info. The capabilities should be provided as a single string, in the format `key1:value1,key2:value2`, this will be parsed and sent to ironic as a map[string]string{"key1":"value1","key2":"value2"}
Improved error handling
return the last error with any error we get (#50) * Fix linting warnings * in workflow.run() append the last_error to any error * Improve the error handling * things caught by handling errors
Support user data headers
v0.2.4 Add user_data_url_headers (#46)
v0.2.3: Make error message less generic (#45)
Currently the erorr message doesn't say which API it's trying to connect to.
v0.2.2
Refactor Provider Code
This refactors the API waiting code to use ContextWithTimeout to enforce
a real timeout period, instead of an estimate based on the number of
attempts. The estimate approach was wildly inaccurate, and considerably
longer than the user's requested timeout.
It also fixes two critical issues. The first, the waitForAPI function
assumed that it was only waiting for Ironic, not inspector, so it tried
to poll inspector for a list of drivers, which is not a call that would
ever succeed. This splits out the code to two functions; waitForAPI and
waitForConductor.
Second, it works around an issue when accessing the Inspector API
endpoint with a trailing /. Inspector always returns a 404 for /v1/,
and the waitForAPI call would always timeout.
To workaround this, we remove the trailing slash for now when polling
the API. This is tracked in storyboard.openstack.org/#!/story/2007660.