Commit Graph

117 Commits

Author SHA1 Message Date
Wiktor Niesiobędzki afa6e7425c
Test different versions of Terraform (#2399)
Add capability to run tests using terraform version 1.5.7 and OpenTofu. 

Automatic checks are run with  Terraform 1.7.4 and OpenTofu 1.7.2, it should be possible to override terraform version when Tests workflow is run manually.
2024-07-05 13:21:41 +02:00
Wiktor Niesiobędzki cf31d83b15 Explicit YAPF style 2024-05-28 10:53:13 +02:00
Ludovico Magnocavallo 7a5dd4e6db
FAST: add top-level folders and restructure teams/tenants in resman (#2254)
* remove teams and tenants from resman

* move fast features to stage 1, fix test inventories

* folders

* fix factory, add top level folder resources to outputs

* tfdoc

* stage 0 log sink defs

* tfdoc

* enable toc in resman readme

* simple tenants

* fast compatibility automation and logging

* testing fast-compatible tenants

* testing fast-compatible tenants

* tfdoc

* remove mt stages

* remove tests, fix links

* disable tflint

* fast tests

* make organization conditional in resman

* check names tool

* export real prefix to tfvars, prevent destroy errors

* prefix validation

* fix billing account export format

* tfdoc

* root node folder

* resman changes

* tenant resman roles

* first apply of tenant resman

* tenant log sinks in stage 1

* fix test vars

* tfdoc

* tenant vpc-sc access policy

* fix tests expected values

* tenant CI/CD

* identity providers

* wif

* tfdoc

* add comments to identity locals

* full-feature tenant resman apply

* tenant billing IAM

* stage test

* fix CI/CD comments

* tenant net stage verified

* tenant sec stage verified

* fix test

* README work

* tfdoc

* README

* README rewording

* README rewording

* tfdoc

* FAST excalidraw

* review comments

* diagram review changes

* add iam log sink for tenants

* remove redundant try from security stage

* Implement tflint-fast in Python driven by tftest.yaml files

* tflint

* test ci changes

* revert linting changes

* disable tflint for fast

* Create junit-style report for FAST tflint

* Remove junit-reporter

* YAPF tflint-fast.py

* Output tflint FAST to job summary

* Step summary

* Disable step_summary as output is not useful

* ignore tflint warning

* re-enable tflint on FAST

---------

Co-authored-by: Wiktor Niesiobędzki <wiktorn@google.com>
2024-05-15 09:17:13 +00:00
Wiktor Niesiobędzki 024d3255e6
Generalization of tflint call for FAST stages (#2225)
* Generalization of tflint call for FAST

* Fix tfvars path

* Fix tfvars path - depending where the file is

* Fix regex

* Reeanble linting

* Align test directory to stage name

* Align all fast stages to use tftest
2024-04-18 21:04:24 +02:00
Julio Castillo f22837cd47
Enable TFLint in FAST stages (#2221) 2024-04-18 10:06:24 +02:00
Julio Castillo 3af7e257d2
Add tflint to pipelines (#2220)
* Fix terraform_deprecated_index

https://github.com/terraform-linters/tflint-ruleset-terraform/blob/v0.5.0/docs/rules/terraform_deprecated_index.md

* Fix terraform_deprecated_interpolation

Reference: https://github.com/terraform-linters/tflint-ruleset-terraform/blob/v0.5.0/docs/rules/terraform_deprecated_interpolation.md

* Fix more indexing

* Remove unused variable

* Enable TFLint for modules

* Add tflint config file

* Fix chdir

* Lint modules

* TFLint fixes

* TFLint

* Fixes binauthz README

* Fixes DNS response policy tests. Restores MIG outputs.

* Fixes other DNS response policy tests.

* Update tests for fast 2-e

* Moar fixed tests

---------

Co-authored-by: Simone Ruffilli <sruffilli@google.com>
2024-04-17 10:23:48 +02:00
Ludovico Magnocavallo fc23c9c387
Update labeler version (#2192)
* update labeler version

* test on:documentation label

* test on:blueprints label

* remove on:documentation

* test

* test on:fast label

* test

* remove test event from workflow

* remove fast comment
2024-04-03 11:24:10 +02:00
Wiktor Niesiobędzki 7ec6c686a8 Add test reports to checks 2024-03-11 10:54:34 +01:00
Julio Castillo ff90b736ca
Update actions to latest versions (#2144) 2024-03-11 09:31:16 +01:00
Ludovico Magnocavallo 6941313c7d
Factories refactor (#1843)
* factories refactor doc

* Adds file schema and filesystem organization

* Update 20231106-factories.md

* move factories out of blueprints and create new factories  README

* align factory in billing-account module

* align factory in dataplex-datascan module

* align factory in billing-account module

* align factory in net-firewall-policy module

* align factory in dns-response-policy module

* align factory in net-vpc-firewall module

* align factory in net-vpc module

* align factory variable names in FAST

* remove decentralized firewall blueprint

* bump terraform version

* bump module versions

* update top-level READMEs

* move project factory to modules

* fix variable names and tests

* tfdoc

* remove changelog link

* add project factory to top-level README

* fix cludrun eventarc diff

* fix README

* fix cludrun eventarc diff

---------

Co-authored-by: Simone Ruffilli <sruffilli@google.com>
2024-02-26 10:16:52 +00:00
simonebruzzechesse d11c380aec
Format python files in blueprints (#2079)
* format python files in blueprints
* update check on blueprints python code
* update python linter in CI workflow
2024-02-15 09:37:49 +01:00
Wiktor Niesiobędzki 2c9eb5795b Bum terraform to version 1.7.0 2024-02-07 17:25:11 +01:00
Wiktor Niesiobędzki 70a94eda46 Add version check 2023-12-27 08:40:23 +01:00
Julio Castillo f815382d32
Update issue templates 2023-10-24 11:11:09 +02: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
Julio Castillo 5bbb7bdd09 Simplify linting output in workflow 2023-08-31 10:15:12 +02:00
Julio Castillo 2e0474dc71
Update pull_request_template.md 2023-08-30 17:49:49 +02:00
Julio Castillo d717712657
Create pull_request_template.md 2023-08-30 17:46:56 +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
Ludovico Magnocavallo d9f7cef1e7
allow using a separate resource for boot disk (#1496) 2023-07-07 15:40:13 +00:00
Julio Castillo 72b5944fb3 Simplify return 2023-05-05 17:03:42 +02:00
Julio Castillo 05ed1bf12f Add blueprint metadata validation tool 2023-05-05 16:57:48 +02:00
Julio Castillo f4b8a61981 Clean workflow files 2023-04-25 15:28:34 +02:00
Julio Castillo ee4a908b10 Remove last remaining legacy fixture 2023-04-25 15:12:32 +02:00
Julio Castillo 78867b0f99 Merge actions 2023-04-25 15:12:32 +02:00
Julio Castillo a09959539c Use tftest copy env var 2023-04-25 15:12:32 +02:00
Julio Castillo cc73c30c08 Pin provider versions in cache 2023-04-25 15:12:32 +02:00
Julio Castillo 3cd3106695 troubleshoot 2023-04-25 15:12:32 +02:00
Julio Castillo 7dd30f104f Reorder cache file 2023-04-25 15:12:11 +02:00
Julio Castillo 0bc89d9942 Fix path again 2023-04-25 15:12:11 +02:00
Julio Castillo b8d601bd63 Fix lockfile path 2023-04-25 15:12:11 +02:00
Julio Castillo 175d1d3893 Troubleshoot 2023-04-25 15:12:11 +02:00
Julio Castillo 49bb72d461 Troubleshoot lockfile 2023-04-25 15:12:11 +02:00
Julio Castillo 89fe36b4f4 print lockfiles 2023-04-25 15:12:11 +02:00
Julio Castillo 1b4e8eb305 Copy default versions to lockfile directory before tf init 2023-04-25 15:12:11 +02:00
Julio Castillo 20ccf7416f Enable parallel tests 2023-04-25 15:12:11 +02:00
Julio Castillo b097d297ff Extend tests to use lockfile if available
This commints allows the test framework to use a lockfile generated
within the tools/lockfile directory. This allows reusing the provider
cache and also running tests in parallel.
2023-04-25 15:12:11 +02:00
Ludovico Magnocavallo 40cda39093
bump Terraform version (#1307) 2023-04-05 09:15:23 +02:00
Ludovico Magnocavallo 3d41d01efc
FAST plugin system (#1266)
* plugin folder, gitignore, serverless connector example

* add support to fast plugin variables and outputs to tfdoc

* rename folder, READMEs

* add variable description

* show diffs

* check documentation, use multiple files

* debug check doc

* try a different glob

* debug tfdoc names

* more debug

* and even more debug

* fix gitignore

* fix links

* support extra files in tests

* fix fixture, switch stage 2 peering to new tests

* tfdoc

* Allow globs in extra files

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2023-03-24 12:28:32 +00:00
Sebastian Kunze 7afdde08c1
Remove container image workflows (#1242) 2023-03-13 07:39:03 +00:00
Julio Castillo 744863b9a3 Simplify testing workflow 2023-03-09 16:04:01 +01:00
Ludovico Magnocavallo ef28e208d3
Use composite action for test workflow prerequisite steps (#1216)
* test composite action

* add shell in action steps

* home input

* boilerplate

* static home

* use action in all test steps

* fix step name
2023-03-06 11:44:57 +01:00
Ludovico Magnocavallo 563ef270af
Try plugin cache, split examples tests (#1215)
* try plugin cache, split examples tests

* fix mkdir

* use cache
2023-03-06 10:38:39 +01:00
Julio Castillo 59ed5d1915 Bump actions versions 2023-02-25 13:08:30 +01:00
Ludovico Magnocavallo 3cca689792
Check linting for Python dashboard files (#1107)
* enable Python lint check for network dashboard

* fix linting for network dashboard
2023-01-21 17:17:51 +01:00
Ludovico Magnocavallo cb87f3efa5
Document new testing approach (#1048)
* document new testing approach

* remove unused workflow branches

* remove stale folder

* fix link

* document new testing approach

* remove unused workflow branches

* fix link

* Extend tests details in contributing guide

* Typos

Co-authored-by: Julio Castillo <jccb@google.com>
2022-12-12 19:59:46 +00:00
Sebastian Kunze 1287b7ca0a
Replace `set-output` with env variable and remove single quotes on labels (#1022) 2022-11-29 08:57:43 +00:00
Sebastian Kunze ceb544833a
Add OpenContainers annotations to published container images (#1021) 2022-11-29 08:11:53 +00:00
Ludovico Magnocavallo cce25f4406
Fix auto-labeling (#1017)
* labeler changes

* test labeler

* change rules

* Only add documentation label for non-README md files

* Revert "test labeler"

This reverts commit d26249886293064ea45f6ab39c30924749d39e79.

Co-authored-by: Julio Castillo <jccb@google.com>
2022-11-28 15:00:31 +01:00
Ludovico Magnocavallo 7461d9b445
Update labeler.yml 2022-11-25 15:58:25 +01:00