Commit Graph

101 Commits

Author SHA1 Message Date
apichick 5ba54aeaf7 Added Cross-region internal application load balancer module 2024-01-16 17:54:50 +01:00
Julio Castillo fde7b76036
Allow per-module terraform fixtures (#1914)
* 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>
2023-12-29 09:43:44 +00:00
andybubu 2ad109ae23
Fix variable region (#1953)
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.
2023-12-28 15:04:15 +01:00
Thangaraju R e2d170c1a6
e2e tests for net-vpc-firewall module (#1896)
e2e tests for net-vpc-firewall module
2023-12-01 13:50:56 +01:00
Wiktor Niesiobędzki 985569fa83 Allow running E2E tests that are skipped in examples 2023-11-15 09:33:03 +00:00
Wiktor Niesiobędzki 03bf0b15b3
Organization module end-to-end tests (#1860)
* 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
2023-11-14 18:54:59 +01:00
Wiktor Niesiobędzki fe485414e6
Add end-to-end tests for project module (#1823)
* 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>
2023-11-03 18:04:19 +01:00
Simone Ruffilli 6d89b88149
versions.tf maintenance + copyright notice bump (#1782)
* Bump copyright notice to 2023

* Delete versions.tf on blueprints

* Pin provider to major version 5

* Remove comment

* Fix lint

* fix bq-ml blueprint readme

---------

Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
Co-authored-by: Julio Castillo <jccb@google.com>
2023-10-20 18:17:47 +02:00
Wiktor Niesiobędzki d07daf966a
End-to-end tests for terraform modules (#1751)
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`
2023-10-20 09:59:52 +02:00
Julio Castillo 46f4d22c87 Examples and tests 2023-09-07 11:31:40 +02:00
Ludovico Magnocavallo 819894d2ba
IAM interface refactor (#1595)
* IAM modules refactor proposal

* policy

* subheading

* Update 20230816-iam-refactor.md

* log Julio's +1

* data-catalog-policy-tag

* dataproc

* dataproc

* folder

* folder

* folder

* folder

* project

* better filtering in test examples

* project

* folder

* folder

* organization

* fix variable descriptions

* kms

* net-vpc

* dataplex-datascan

* modules/iam-service-account

* modules/source-repository/

* blueprints/cloud-operations/vm-migration/

* blueprints/third-party-solutions/wordpress

* dataplex-datascan

* blueprints/cloud-operations/workload-identity-federation

* blueprints/data-solutions/cloudsql-multiregion/

* blueprints/data-solutions/composer-2

* Update 20230816-iam-refactor.md

* Update 20230816-iam-refactor.md

* capture discussion in architectural doc

* update variable names and refactor proposal

* project

* blueprints first round

* folder

* organization

* data-catalog-policy-tag

* re-enable folder inventory

* project module style fix

* dataproc

* source-repository

* source-repository tests

* dataplex-datascan

* dataplex-datascan tests

* net-vpc

* net-vpc test examples

* iam-service-account

* iam-service-account test examples

* kms

* boilerplate

* tfdoc

* fix module tests

* more blueprint fixes

* fix typo in data blueprints

* incomplete refactor of data platform foundations

* tfdoc

* data platform foundation

* refactor data platform foundation iam locals

* remove redundant example test

* shielded folder fix

* fix typo

* project factory

* project factory outputs

* tfdoc

* test workflow: less verbose tests, fix tf version

* re-enable -vv, shorter traceback, fix action version

* ignore github extension warning, re-enable action version

* fast bootstrap IAM, untested

* bootstrap stage IAM fixes

* stage 0 tests

* fast stage 1

* tenant stage 1

* minor changes to fast stage 0 and 1

* fast security stage

* fast mt stage 0

* fast mt stage 0

* fast pf
2023-08-20 09:44:20 +02:00
Julio Castillo 165515f9fd Update contributing guide with new test framework 2023-03-09 14:41:18 +01:00
Julio Castillo edce6edd28 Update factories and apigee tests 2023-02-25 19:26:11 +01:00
Julio Castillo 3a0f69dc2d Revert examples/conftest.py 2023-02-25 19:26:11 +01:00
Julio Castillo 71e96dfdee Allow blueprints to be tested from README files without examples. 2023-02-25 19:26:11 +01:00
Julio Castillo 2aad7845a4 Allow dashes and underscores in tftest file ids 2023-01-19 17:47:14 +01:00
Julio Castillo 12f07ebeac Extend net-vpc README with more tested examples 2023-01-19 17:47:14 +01:00
Julio Castillo c8bfe892a6 Update folder tests 2023-01-03 16:52:31 +01:00
Julio Castillo 4f7cb39a06 Simplify readme discovery 2022-12-18 14:00:20 +01:00
Julio Castillo 126227502e Fix tests paths for examples 2022-12-18 14:00:20 +01:00
Julio Castillo 4b77e484b1 Migrate project module to new tests 2022-12-18 14:00:19 +01:00
Julio Castillo e700a27079 Enforce terraform fmt in examples 2022-12-18 14:00:19 +01:00
Julio Castillo 4e95645e69 Silence linting 2022-12-18 14:00:19 +01:00
Julio Castillo 8accf2ed91 Fix typo 2022-12-18 14:00:19 +01:00
Julio Castillo 513fdfe91a Make directive for supporting files in examples more explicit 2022-12-18 14:00:19 +01:00
Julio Castillo aaacee2a70 Ignore multiple whitespace in tftest directives 2022-12-18 14:00:19 +01:00
Julio Castillo aba14fe574 Allow passing an inventory to examples test directive 2022-12-18 14:00:19 +01:00
Ludovico Magnocavallo d2015b0bc3
Assorted module fixes (#1045)
* 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
2022-12-10 15:40:15 +01:00
Julio Castillo 798d3a4136 Update VPN-HA module to tf1.3 (wip) 2022-11-30 10:52:24 +01:00
Sebastian Kunze e4fc47a063
Normalize prefix handling in blueprints (#1003) 2022-11-23 11:09:00 +01:00
Julio Castillo 2cd74823b1 Generate files based on readme contents 2022-11-18 17:48:52 +01:00
Julio Castillo a3767cdfe2 Fix boilerplate check 2022-11-18 17:48:52 +01:00
Julio Castillo 5cfa1062cc Ensure inline README file match fixture files 2022-11-18 17:48:52 +01:00
Julio Castillo 7be3288cc7 Add tests for factory examples 2022-11-18 17:48:52 +01:00
Ludovico Magnocavallo 4b798fb34d
Run tests in parallel using `pytest-xdist` (#881)
* 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
2022-10-14 14:56:16 +02:00
Ludovico Magnocavallo 9400eed2bf
Add documentation example test for pf (#813)
* Add documentation example test for pf

* skip tmpdir for examples
2022-09-14 14:34:30 +02:00
Julio Castillo 7e9173d35d Create fully recursive e2e test runner 2022-09-12 13:58:11 +02:00
Julio Castillo 269894e92b Update all internal links examples -> blueprints 2022-09-09 16:39:01 +02:00
Julio Castillo a248602827 Rename examples folder to blueprints 2022-09-09 16:38:43 +02:00
lcaggio 4da440bc4f First commit. 2022-09-08 17:47:20 +02:00
lcaggio 49baa5da30 Fix YAML 2022-08-31 16:54:30 +02:00
lcaggio 7509752caf First commit. 2022-08-31 16:25:29 +02:00
lcaggio c0e17f4732
Improve Data Playground example (#738)
* First commit

* Fix README

* Improve READMEs

* Implement PR comments.

* Fix

Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
2022-08-09 15:56:39 +02:00
Miren Esnaola 5c9f336441 Example of a multi-cluster mesh on GKE configuring managed control plane using the Fleet API 2022-08-08 16:32:52 +02:00
Ludovico Magnocavallo 03bf8b6e32
Allow interpolating SAs in project factory subnet IAM bindings (#767) 2022-08-04 10:39:28 +02:00
Ludovico Magnocavallo 5e0ab57f3a
Add support for IAM bindings on service accounts to project factory (#753)
* Fix #748

* fix linting

* remove trailing whitespace

* update FAST pf
2022-07-21 15:13:39 +02:00
Miren Esnaola 68e56058ab AD FS example 2022-07-11 09:52:35 +02:00
Ayman Farhat 54d805dac0
New example for a data playground Terraform setup (#655)
* Initial commit for adding a sample data playground

* Update README

* Add license boilerplate to variables.tf

* Apply linting rules

* rename var to ptoject_id, create prefix var, remove extra zone var

* Adds the option for using an existing project by default

* Bundles all VPC related variables in a single vpc_config variable of type object

* Add encryption_key usage example + policy_boolean

* Add tests, apply linting and todos for upcoming PRs

* Update variables in readme

* Fix formatting via fmt

* Rename test dir to fix module conflict issue

* Add high level diagram and sort vars/outputs by alphabetical

* Modify diagram and update main README under data examples with link / summary

* Line break

* Use png in diagram

Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
2022-07-10 09:27:18 +02:00
Miren Esnaola 2e9fdea1a4 Binary authorization module and example 2022-06-17 16:09:12 +02:00
Miren Esnaola 9f5d59748d Added example with GLB and Cloud Armor 2022-05-26 15:32:11 +02:00