* add service attachment support to lb app int module
* allow direct referencing of self managed ig in ilb module
* add service attachment support to net-ilb-int
* add service attachments example to net-lb-int
* fix resource name in net-lb-ext
* rename fwd rules resource in test inventories
* add toc to net-lb-int
Add support for Cloud Run v2 jobs
* create a separate file for service creation (service.tf) and job
(job.tf) - for easy comparison
* add E2E tests where possibile
* remove default value for input variable `region`
* fix subnet range VPC Access Connector example
* add creation of service account for audit logs call (trigger requires
service account)
* use provided trigger service account email in
`local.trigger_sa_email`, so explicitly provided SA is passed to
trigger
* set default value for vpc_connector_create.throughput.max, to match
what is set by GCP API, as provider uses wrong default of 300 which
results in perma-diff
* create inventory fiels for all examples
Global changes
* (tests) add input variable `project_number`, to allow assigning IAM permissions to Service Accounts in fixtures
* (tests) fix not outputting the path, when object is not found in inventory
* (tests) fix `create_e2e_sandbox.sh` - now it properly finds root of the repo
Secret Manager
* added `version_versions` output, to allow specifying versions in other modules. `versions` is sensitive and it makes it unsuitable for `for_each` values
New test fixtures
* `pubsub.tf` - creating one topic
* `secret-credential.tf` - creating Secret Manager `credential` secret
* `shared-vpc.tf` - creating two projects (host and service), and vpc in host project
* `vpc-connector.tf` - creating VPC Access Connector instance
* Allow terraform fixtures for examples
* Allow defining multiple fixtures, and named fixtures under tests/fixtures/
* Enable e2e for wiktorn
* Fix prepare_files call for e2e
* Move fixture to separate file, fix test
* Revert shallow-copying symlinks, performane penalty - 20%
* Update tfdoc.py to list used fixtures
---------
Co-authored-by: Wiktor Niesiobędzki <wiktorn@google.com>
This PR changes variable region's default value in example tests to real region value.
Some of the modules parse the region name to decide whether to create regional or zonal resources.
* added tag serial to mark tests to be run serially
* always run tests using loadgroup distribution to make use of serial tag
* added end-to-end tests for organization, not adding to custom constraints as the name has to be unique
* fixed granting custom roles created in the same module call
* Add end-to-end tests for project module
* Add inventory to data tests
* Add files to end-to-end test cases
* Review fixes - use named groups
---------
Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
Add end-to-end tests (apply, plan, destroy) for examples.
When run, `tests/examples_e2e`:
1. Create an environment for tests to run (folder, project vpc network)
2. For each marked example (with `e2e` tftest directive), run apply, plan, destroy
3. Verify:
* no failure in apply
* empty plan after apply
* no failure during destroy
4. When all tests are done, destroy test environment
More details in `tests/examples_e2e/README.md`
* net-ilb-l7 use both neg types in backends
* run example tests on cloud-config-container modules
* streamline nginx-tls cos module
* add tests for cos modules
* tfdoc
* onprem needs fixing, links
* disable test
* test
* test terraform cache
* try pytest-xdist
* revert cache changes
* extend to other jobs
* change dist, bump processes to 4
* revert
* mark tests
* run init to prime providers cache
* prime providers cache
* prime providers cache for all jobs
* add local provider to versions
* remove leftover code