Commit Graph

20 Commits

Author SHA1 Message Date
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
Lorenzo Caggioni 6eeda3da7a Add KMS support 2022-04-13 11:09:34 +02:00
Julio Castillo 2644627837 Remove broken link and ignore globals in fast stages 2022-04-12 21:33:03 +02:00
Ludovico Magnocavallo 725f7effce
Initial MVP for CI/CD (#608)
* preliminary support for wif in stage 0

* IAM wif role

* IAM wif role TODO

* add support for external SA IAM to SA module

* add name output to SA module

* separate cicd SA

* tfdoc

* GITLAB principal (untested)

* make GCS name output static

* outputs bucket

* fix stage 1 test

* tweak outputs

* tfdoc

* move wif_pool to automation variable

* add support for top-level and repository providers

* add missing boilerplate

* fix branchless principal

* initial workflow

* symlink provider template in stages

* remove service accounts from stage 0 cicd tfvars

* add cicd interface variable to resman stage

* fix cicd variable in resman stage

* better condition on outputs_location

* fix last change

* change outputs_location type

* revert outputs_location change

* split outputs in stage 0

* update ci/cd temporary notes

* rename additive IAM resource in SA module

* split outputs in stage 1

* remove unused locals

* fix stage 1 tests

* tfdoc

* Upload action files to outputs_bucket

* Fix tests and README

* rename template, streamline outputs

* local templates and gcs output for all stage 2

* add workflows to local output files

* Use lowercase WIF providers everywhere

* Bring back suffix for workflow files

* Remove unused files

* Update READMEs

* preliminary CI/CD implementation for stage 1

* fix stage 1

* stage 1 cicd

* tfdoc

* fix tests

* readme and links for cicd and wif

* refactor wif providers

* refactor cicd for stage 1

* fix stage 1

* wif org policies

* split identity provider configuration from cicd

* add type attribute to cicd repositories

* valid cicd repositories have a workflow template

* refactor stage 01

* fix stage 01 tests

* minimal CI/CD documentation

* better check_links error reporting

* fix links

* Added Gitlab specific configurations

Set the default issuer_uri for Gitlab. Added allowed audiences to OIDC configuration.

* Fixed TF formatting in identity providers.

* Changing identity provider audience to null

Changing identity provider audience to default to null.

* add instructions for renaming workflows

* address Julio's comments

Co-authored-by: Julio Castillo <jccb@google.com>
Co-authored-by: alexmeissner <alexmeissner@google.com>
2022-04-12 08:17:27 +02:00
apichick 00473fda64 API gateway module and example that creates a multi-region deployment for API gateway 2022-02-22 12:00:44 +01:00
Ludovico Magnocavallo 369253cc3a write providers to a common folder 2022-02-16 00:14:49 +01:00
Ludovico Magnocavallo 8d5116fbe8 gitignore 2022-02-16 00:11:14 +01:00
Simone Ruffilli c5ba74374b
Update subnets (#466) 2022-01-28 08:26:03 +01:00
Ludovico Magnocavallo e866db2c88 Merge Fabric FAST (#435)
Co-authored-by: Simone Ruffilli <sruffilli@google.com>
Co-authored-by: Julio Castillo <jccb@google.com>
2022-01-19 14:19:39 +01:00
Julio Castillo f0773d4883 Simplify tests by figuring out fixture dir automatically
We always use the same directory for terraform fixtures, so it's quite
easy to figure out its path from a pytest fixture by inspecting the
stack. This commit implements this functionality and decreases the
amount of boilerplate needed to write a test.

(Ported from fast)
2022-01-11 11:54:13 +01:00
Mikołaj Stefaniak b481d9baff
Packer example changelog (#316)
* Updated top-level README and CHANGELOG to reflect packer-builder example

* Added packer related files to gitignore
2021-10-04 17:35:31 +02:00
Julio Castillo 94b1a439ee Fix IAM bindings for logging sinks
- Move to non-authoritative bindings to allow multiple sinks to write to
  the same destination
- Allow automatically adding logging bucket IAM bindings
2021-03-31 09:59:28 +02:00
Ludovico Magnocavallo fe71be72d3
Aurelien's SVPC DNS example (#186)
* Cloud DNS and Shared VPC (#184)

* Cloud DNS and Shared VPC module to allow application teams to have their own Cloud DNS configuration.

* Cleaning up README.md

* Improving Formating.

* Adding license to all .tf files.

* Removing dead code.

* Moving this example into the Cloud Operations folder.

* Using fabric resources and refactoring. Only the 'test.example' file is not using the proper modules now.

* normalize README, use autogenerated vars table, add types to variables

* refactor

* simple tests

* add diagram, update READMEs

Co-authored-by: Aurélien Legrand <aurelien.legrand01@gmail.com>
2021-01-11 11:57:57 +01:00
Ludovico Magnocavallo 14fe796885
Add missing role to GKE nodepool service account, refactor test runners and parallelize tests (#164)
* add missing role to GKE nodepool service account

* refactor plan test runners

* remove spurious print statements from test

* use concurrency via locking the fixture dir

* add filelock to test requirements

* fix pytest arg in cloud build

* and yet another dep and args fix

* fix e2e runner, use correct runner in env e2e test

* revert parallel test changes, split modules and environments triggers

* I should stop experimenting in PRs
2020-11-09 21:32:09 +01:00
Ludovico Magnocavallo 1b5af2d923
Cloud Asset feed operations example (#110)
* first working example for asset inventory feeds

* move tf files out of the tf folder

* add input/outputs to README

* smaller diagram

* use narrow scoped service account for cf, account for gke tags in code

* Update README.md

* new top-level folder README

* Update README.md

* add TODO for DNS example in operations README

* fix README conflict

* Update README.md

* Update README.md

* update diagram

* cloud shell

* cloud shell

* Update README.md

* rename outputs, first complete README draft

* Update main.py

* Update README.md

* Update README.md

* better error handling in the cloud function

* remove branch from cloud shell link
2020-07-05 19:08:24 +02:00
Ludovico Magnocavallo ae2e4dc3ad interpolate vpc name in routes 2020-06-12 12:07:28 +02:00
Ludovico Magnocavallo d948668a6a add .terraform.tfstate.lock.info to git ignore file 2020-05-10 09:36:24 +02:00
Ludovico Magnocavallo e553da6464
Org environments module tests and tests CI configuration
* sample test

* bump tftest library version in requirements

* org env: initial tests

* Fix boilerplate

* add boilerplate to skel testing cloud build

* use package structure for tests

* use package structure for tests

* add bolerplate to package init files

* wip build config for tests

* initial test cloud build configuration

* dummy change

* add comment to test configuration file

* add missing test docstring

* remove debug logging config from tests fixture
2019-09-11 13:36:07 +02:00
Ludovico Magnocavallo e4fa25f22d
Organization sample: environments (Almanac bootstrap port)
* add gitignore file

* data and infra skeletons

* org skeleton

* org environments sample skeleton

* Organization teams sample skeleton.

* Organization env sample GCS for tf state.

* org env: service accounts and GCS roles

* org env: folders

* org env: audit export

* org env: shared project

* org env: switch to released 3.1.0 project module version

* rename organization top-level folder to organization-bootstrap

* org env: use folders module with better outputs, module outputs

* org env: switch the service accounts module to v2.0.0.

* Merge ludo's branch from forked repo (#2)

* org env: update gcs, sa, project modules

* Use correct folder ID in format  without  prefix

* org env: update folders module version, improve comments

* org env: initial work on README, diagram, add variable for xpn roles

* org env: update roles in README, backend file

* org env: README changes

* org env: README changes

* org env: README changes

* org env: README changes

* org env: add IAM variables for audit and shared projects

* org env: address README TODOs

* org env: minor README changes

* org env: minor README changes

* org env: minor README changes

* org env: simplify the sample's README by moving general considerations into the section README

* Org examples README changes

* org env: simplify initial state management, add comment for shared folder

* org env: change state instructions to copy and rename instead of renaming backend file

* org env: add a section in the README file to explain shared services, and detail options

* fix comment for shared services project
2019-09-07 05:44:24 +02:00