This is a significant change that touched most files in the TF Provider.
Most changes occurred in the client.go file.
replaced the gprc dial operations with the go CloudOperationsClient operations
replaced client passing between client.go, provider.go, and the resource and data source .go modules with a pointer to the CloudOpsClient stored within client.go
other minor dependency and import changes were made as well
Why?
To reduce technical debt and improve the speed at which new protos are exposed through the TF provider, we want to use the Go SDK to access all cloud ops apis as opposed to compiling raw protos and including directly into the TF provider.
Checklist
[ ] Please review code for correctness, style, best-practices, etc
[ ] Please determine if the hardcoded version field in client.go is still required. I left this var alone during this refactor
[ ] Please run all tests and verify all resource and data source function
[ ] Please deploy to TF
Closes #120
How was this tested:
this change was tested in 2 ways:
internal tests were executed using go test ./...
-- note | it didn't appear that the resource tests were executed using go test ./... . Because of this, individual tests were invoked using go test -v -run commands and referencing specific tests
manually by running terraform apply for each resource and data source included in the TF provider
-- manual tests followed the test instructions included in this repo's README
-- manual test .tf files are available
Any docs updates needed?
possibly, i added a Go SDK requirement to the Requirements section of README but did not make any other changes
What was changed
This is a significant change that touched most files in the TF Provider. Most changes occurred in the client.go file.
Why?
To reduce technical debt and improve the speed at which new protos are exposed through the TF provider, we want to use the Go SDK to access all cloud ops apis as opposed to compiling raw protos and including directly into the TF provider.
Checklist
Closes #120
How was this tested: this change was tested in 2 ways:
go test -v -run
commands and referencing specific teststerraform apply
for each resource and data source included in the TF provider -- manual tests followed the test instructions included in this repo's README -- manual test .tf files are available