gruntwork-io / terratest

Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.
https://terratest.gruntwork.io/
Apache License 2.0
7.48k stars 1.32k forks source link

Support for more GCP services in terratest #257

Open git4raj opened 5 years ago

git4raj commented 5 years ago

Please let me know if there is an effort to add support in Terratest for more GCP services such as CloudSQL, BigQuery, BigTable etc. in addition to Storage and Compute.

brikis98 commented 5 years ago

We have plans down the line to support more services, but it may take us a while to get to them. PR's in the meantime to speed things up are very welcome!

robmorgan commented 5 years ago

Hi @git4raj, as you mentioned Cloud SQL I'd like to point you to the Cloud SQL module we recently open-sourced. You can see an example of how we test Cloud SQL databases using Terratest here: https://github.com/gruntwork-io/terraform-google-sql/blob/master/test/example_mysql_public_ip_test.go.

As @brikis98 mentioned, we'll eventually add support for more services as we expand our collection of modules, but feel free to submit a PR in the meantime.

brucearctor commented 3 years ago

@brikis98, @robmorgan -- is there something to actually track/prioritize all potential GCP services? Like Jira, knowing who might be addressing at any time, etc? Or would that only be in issues here? And, perhaps the community addressing these things is rather small. I do see: https://terratest.gruntwork.io/docs/community/contributing/ which says use this. But, there doesn't seem to be lots of activity or many people, which is why I am looking to verify I'm not missing something obvious, or docs out of date, etc...

Context: I'm evaluating our enterprise adoption of Terratest for GCP, but the range of services that can be tested currently is small. No problems in-theory adding PRs for those myself or others in Platform team. I'm beginning to get my bearings with Terratest and the ways of doing things within this community :-)

robmorgan commented 3 years ago

@brucearctor thanks for your message. As a company, we've intentionally deprioritized GCP for now so we can focus on building a better AWS experience. Therefore you are free to essentially contribute anything that is missing. Please be sure to following the contribution guidelines. We do have a basic litmus test for the types of things we actually want included in Terratest. If you are ever unsure, you can always open a new issue for discussion or simply leave a comment here.

To avoid the problem of double-work, I'd encourage you to 'push early and often' even if it's a work in progress! We can always label your PR as a draft. That way you won't spend too many cycles working on something that somebody else may also be investing time in, but to your point our GCP community is still fairly small at the moment compared to what's happening with AWS and Azure at the moment.

brucearctor commented 3 years ago

@robmorgan have https://github.com/gruntwork-io/terratest/pull/776 submitted to kick things off.

Ideally will get some early feedback to get style/process and more worked out to make some future contributions even more streamlined. There is alot of bigquery functionality that we will be looking to write. Dataset seemed a good starter as fundamental base.

sebglon commented 3 years ago

I can suggest to work on cloudrun and scheduler service. Are you agree with that?