54 Commits

Author SHA1 Message Date
Luca Prete
f2d4e937d1 Fix pre-commit hook (#3882) 2026-04-18 10:07:14 +02:00
Ludovico Magnocavallo
85b0871085 Add net-vpc-factory and starter-gcd dataset to 0-org-setup, fix context in net-vpc-factory (#3860)
* feat(fast/0-org-setup): integrate net-vpc-factory into stage 0

* initial starter dataset

* starter pack

* fix(fast/0-org-setup): correct factory vpcs paths definition and update test inventory

* feat(fast/0-org-setup): add VPC and subnet outputs and update stage tfvars

* test(fast/0-org-setup): update gcd starter defaults and regenerate inventory

* fix(modules/net-vpc-factory): remove internal defaults logic and pass context correctly

* fix typo in dataset fw rule, add missing boilerplate, set sane defaults for net vpc factory

* terraform fmt

* tfdoc, copyright year

* schema docs

* yamllint
2026-04-13 09:42:03 +02:00
Ludovico Magnocavallo
1e34ae3bc8 align vpc factory module factories_config to project factory (#3855) 2026-04-10 19:21:21 +02:00
Ludovico Magnocavallo
304dd73642 Update boilerplate and project services in 2-networking (#3852)
* chore(fast): update boilerplate in 2-networking yaml files

* chore(fast): replace stackdriver.googleapis.com with logging and monitoring services

* fix(net-vpc-factory): correct description for secondary subnet example
2026-04-10 15:20:22 +00:00
Ludovico Magnocavallo
ae9c94adf5 tools: add orphan doc detection to check_schema_docs.py and remove stale files (#3853) 2026-04-10 16:41:04 +02:00
Julio Castillo
bc5b203a8f Add toggle to tfdoc to remove type hints (#3842)
* Add toggle to tfdoc to remove type hints

* Update all readmes

* Fix python formatting
2026-04-08 11:08:18 +00:00
Ludovico Magnocavallo
409c088c2c enforce schema docs in linting (#3843) 2026-04-08 10:20:50 +00:00
Simone Ruffilli
1caeacec20 Support for net-vlan-attachments in 2-networking (#3789) 2026-03-16 15:03:14 +01:00
Ludovico Magnocavallo
fb21f6aaf8 Change factories_config type in FAST and project/vpc factory modules, add YAML schema validation (#3728)
* stage 0

* stage 1

* networking

* security

* pf stage

* tfdoc

* align schemas

* inventory

* fix observability

* pf module

* pf module budgets

* align fast stages

* align project subfactories

* tfdoc

* schema validation

* add missing schemas

* Fix observability types

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2026-02-11 15:29:49 +00:00
Simone Ruffilli
494ecba511 Refactor subnets mgmt in net-vpc-factory (#3715)
Refactor subnets mgmt in net-vpc-factory

This commit removes the ability to define subnets inline within the VPC `.config.yaml` across `net-vpc-factory` and enforces file-based subnet definitions using the `subnets/` subdirectory pattern.

Key changes include:
- **Module Updates:** Removed standard and non-standard inline subnet arguments (`subnets`, `subnets_private_nat`, `subnets_proxy_only`, `subnets_psc`) from the factory module's internal `vpcs` instantiation.
- **Schema & Docs:** Renamed `vpc.schema.json` to `vpc-factory.schema.json`, stripping inline subnet definitions from the JSON schema, and updated the module `README.md` to reflect the new file-based only approach.
- **Stage 2 Networking Configs:** Refactored datasets to migrate inline `subnets_proxy_only` definitions into standalone files like `subnets/prod-proxy.yaml`. Added a new exported output `subnet_ips` for downstream usage.

<!--
**Breaking Changes**

```upgrade-note
`fast/stages/2-networking`: Proxy-only subnets have been renamed for consistency - unfortunately this results in a nasty create-before-destroy which needs to be handled manually (i.e. delete the existing proxy-only-subnet first, either manually or with a targeted apply, then apply again)
```
-->
2026-02-09 10:51:43 +00:00
Julio Castillo
f5958b9eae Merge branch 'master' into fast-dev 2026-02-05 12:25:31 +01:00
Simone Ruffilli
1404fb20da Net-vpc-factory (#3696)
This PR (re :D)introduces module net-vpc-factory, a minimal factory that deals with vpcs, subnets, and firewall rules creation, meant to be embedded into other factories, starting with 2-data-platform and 2-networking.
2026-02-04 11:36:58 +01:00
Simone Ruffilli
de8ebefe17 Start the deprecation process of the old networking stages (#3451)
This PR renames `2-networking-foo` stages to `2-networking-legacy-foo` - including references of stages in docs and tests.

**Breaking Changes**

```upgrade-note
`fast/stages/2-networking-a-simple`: The stage is being deprecated, and superseded the `2-networking` FAST stage, introduced in #3435 
`fast/stages/2-networking-b-nva`: The stage is being deprecated, and superseded the `2-networking` FAST stage, introduced in #3435 
`fast/stages/2-networking-c-separate-envs`: The stage is being deprecated, and superseded the `2-networking` FAST stage, introduced in #3435 
`modules/net-vpc-factory`:  The module has been deprecated, and superseded the `2-networking` FAST stage, introduced in #3435 
```
2025-10-22 16:31:14 +02:00
Luca Prete
64738a1808 Add Agent Engine module. (#3429) 2025-10-20 17:02:39 +02:00
Julio Castillo
9b9ad76ced Update gke-hub module to use new Policy Controller API (#3332)
* Update gke-hub to use new Policy Controller API

Fixes #3287

* Use same config format for servicemesh

* remove useless trys

* use ternaries as in the rest of the repo

* Update docs and fix tests

* Update variables

* Bump tofu version

* Bump terraform version 1.12
2025-10-13 09:47:39 +02:00
Ludovico Magnocavallo
c0aa691052 v45.0.0 2025-09-20 12:07:40 +00:00
Ludovico Magnocavallo
4801b65291 v44.2.0 2025-09-20 11:57:31 +00:00
Ludovico Magnocavallo
894a0f5975 prep v44.1.0 2025-09-06 09:15:41 +00:00
Ludovico Magnocavallo
58643a8ab4 merge fast-dev and prepare v44.0.0 2025-09-05 09:18:21 +00:00
Ludovico Magnocavallo
36648b6b63 FAST light implementation (#3255)
* data wip

* wip data

* update org schema, add note on expansion

* all schemas, workload notes

* Update WORKLOG.md

* Update WORKLOG.md

* Update WORKLOG.md

* Update WORKLOG.md

* wip

* data wip

* wip

* wip

* wip

* wip

* org module IAM context (using lookup)

* new-style context expansion in project IAM

* remove spurious file

* project module contexts

* finalize context replacement format for project module

* revert org module changes

* fix tag id interpolation in project

* fix tag id interpolation in project

* organization module context

* organization context test

* context expansion for folder tag bindings

* test context expansion for tag bindings

* service account module context

* simplify context local

* context for iam service account

* nuke blueprints

* remove links to blueprints

* vpc sc context in project module

* Add context to GCS module

* Add inline deps to plan_summary script

* Make context a top-level variable for folder, organization, sa

* Add add context top-level to VPC-SC

* move context out of factories_config variable

* tfdoc

* fix merge

* fix merge

* fix examples

* net-vpc module context

* add parent ids to folder context

* rename folder parent context

* fix folder parent check

* new project factory stub

* wip

* wip

* refactor defaults

* project iam

* bueckts and service accounts

* start adding context replacements

* better test data

* automation resources for folders and projects

* automation

* add support for project id interpolation

* first tested apply

* improve IAM description in gcs module

* add context to billing account module

* add notification channels to billing account module context

* add billing budgets to new pf

* schemas and defaults

* bootstrap wip

* bootstrap wip

* bootstrap wip

* pf outputs

* pf fixes

* fix pf sample data

* bootstrap lite fixes

* add locations to organization module contexts

* bootstrap lite fixes

* org fixes, billing accounts

* fix default project parent

* bootstrap lite wip

* add locations to gcs module context

* add context support to logging bucket module

* add context to pubsub module

* split out iam variables in gcs module

* fix logging bucket context test

* bootstrap log sink destinations

* streamline logging-bucket module variables

* fix logging bucket context test

* align logging bucket module interface in fast bootstrap

* add support for project-level log buckets to project factory

* support full context expansion in organization module log sinks

* log buckets in fast-lite bootstrap

* make og sink type optional in organization module

* log sinks in fast-lite bootstrap

* set tag values in factory context

* bootstrap lite data

* output files schema

* billing account schema

* output files

* output providers

* gcs output files

* boilerplate

* tflint

* check documentation

* check docs

* fix project module parent variable validation

* fix log bucket examples

* allow null parent in project module

* silence folder test errors

* fix billing account sink example

* fix project example

* fix billing account module

* fix folder tests

* fix FAST

* fix fast

* tfvars outputs

* wif

* cicd service accounts

* cicd

* allow defaults in context, minimal org policies

* support gcs managed folders in project factory and bootstrap lite

* support prefix in provider output files

* rename bootstrap stage

* gitignore

* gitignore

* security folder, billing IAM

* wip tfvars

* fix typo

* security IAM

* control tag iam/context via variables in organization module

* split tag creation from tag IAM to avoid circular refs

* port organization module tag changes to project module

* implement new-style context expansion in vpc-sc module

* fix fast vpc-sc tests

* boilerplate

* vpc sc stage

* schemas

* fast-lite compatibility for vpc sc stage

* make log project number optional in vpc-sc stage

* networking

* networking

* networking

* networking

* rename and move new stage under fast

* clone pf tests

* use context replacement for internal notification channels in billing account module

* support service agents in project module iam context replacements

* support service agents in project module iam context replacements

* add support for kms keys to project module context

* experimental pf example test and fixes

* fix schemas

* fix tests

* tfdoc

* tfdoc

* pf config

* experimental pf

* remove redundant dot from gcs managed folder IAM keys

* bootstrap experimental test

* project factory exp stage test

* skip tflint for bootstrap experimental test

* tflint

* fix gcs test

* documentation work

* documentation work

* Update README.md

* tfdoc

* tfdoc

* readme

* tfdoc

* readme

* readme

* readme

* readme

* support universe in pf exp projects

* missing universe service agents

* org policies import, non-admin billing IAM

* todo

* fix test

* custom constraints

* fast classic dataset

* fix test data

* context replacements in billing module log sinks

* fix typo

* add support for billing log sinks

* update docs

* readme

* cicd fix and test

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-09-02 08:38:57 +02:00
Julio Castillo
d3f0dc984e Upgrade provider to version 7.0.1 (#3291)
* Upgrade provider to version 7.0.1

* Update READMEs

* Bring back depends_on for services and jobs
2025-09-01 17:29:20 +02:00
Ludovico Magnocavallo
9a2337ceb9 prepare v42.1.0 2025-09-01 15:05:09 +00:00
Wiktor Niesiobędzki
8468fd4ebc Bump provider to 6.47.0, to allow use of gpu_zonal_redundancy_disabled in modules/cloud-run-v2 2025-08-13 15:21:27 +02:00
Ludovico Magnocavallo
f02aa1f63f v42.0.0 2025-08-08 06:49:11 +00:00
Ludovico Magnocavallo
241b005f68 Merge remote-tracking branch 'origin/master' into fast-dev 2025-08-08 06:46:42 +00:00
Ludovico Magnocavallo
f9c76c8a87 version 41.1.0 2025-08-08 06:43:08 +00:00
Ludovico Magnocavallo
332d8614ab Merge remote-tracking branch 'origin/master' into fast-dev 2025-07-18 15:47:46 +00:00
kovagoadam
c551c5b278 Add support for quotas to project-factory module (#3242)
* Add support for quotas to project-factory module

* Updated embeded definition in net-vpc-factory
2025-07-18 11:58:29 +00:00
Ludo
0a2cc6e763 Merge remote-tracking branch 'origin/master' into fast-dev 2025-07-07 10:19:23 +02:00
Julio Castillo
b8efcc5d89 Add IP filtering support to modules/gcs (#3216)
* Add IP filtering to GCS

* Bump provider version
2025-07-04 18:57:32 +00:00
Liam Nesteroff
f07e4f64e9 Standardise reuse variable from project module and implement for net-vpc (#3205)
* exposing the network_id from the net-vpc module for use with tag bindings

* convert vpc_create to vpc_reuse

* Changed the reuse vars to standardised attributes

* fixed readme tests and schemas

* modified apigee blueprint to use vpc_reuse with network_id passthrough

---------

Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
2025-07-03 09:12:05 +10:00
Ludo
e46178c241 Merge remote-tracking branch 'origin/master' into fast-dev 2025-06-29 14:19:43 +02:00
Ludo
268c92f92d prep v40.2.0 2025-06-29 14:12:20 +02:00
Sepehr Javid
562a7cfe17 Add default route action to internal app lb path matcher (#3195)
* add path_matcher.default_route_action

* update readme

* update versions
2025-06-26 14:21:32 +02:00
Ludovico Magnocavallo
fe0a8128dc Allow custom roles in context, add support for shared VPC IAM to project and project factory (#3163)
* add support for custom roles and hos tproject iam to project modules

* align vpc factory
2025-06-15 10:01:22 +02:00
Ludovico Magnocavallo
6b04ce769d Allow multiple types in JSON schema docs tool (#3126)
* allow multiple types in JSON schema docs tool

* support pattern

* support pattern
2025-05-31 11:58:20 +02:00
Julio Castillo
271942f2ed Bump Terraform to 1.11 (#3120)
* Bump Terraform version to 1.11

* Update workflows
2025-05-29 11:11:39 +02:00
Julio Castillo
1eeaf21b14 Prep release 40.1.0 2025-05-21 16:20:42 +02:00
Julio Castillo
94cdce4467 Add fast_version.txt to FAST stages (#3107)
* Add fast_versions.txt file

* Fix versions.tf module path

* Fix linter
2025-05-21 15:10:57 +02:00
Ludo
e4f83431bc prep v40.0.0 2025-05-21 10:25:45 +02:00
Ludo
4a66fbf680 prep v39.2.0 2025-05-21 09:23:49 +02:00
Julio Castillo
54b444f812 Merge branch 'master' into fast-dev 2025-05-09 12:44:17 +03:00
Simone Ruffilli
7ea66b0bc6 Added versions.tf to net-vpc-factory (#3073) 2025-05-08 08:40:45 +00:00
Ludovico Magnocavallo
30b390483e JSON schema documentation tool (#3070)
* wip

* wip

* wip

* generate schema docs

* formatting

* typo

* fix details

* fix details

* revert dp change

* tfdoc
2025-05-06 08:17:46 +02:00
Ludo
4c7ff3381e Merge branch 'master' into fast-dev 2025-05-02 14:39:28 +02:00
Tyler Sommer
e547d4d29c Add deletion_policy to project-factory module (#3060)
* Add deletion_policy to project-factory module

* Use project deletion_policy in object normalization

* Replicate changes in net-vpc-factory

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-04-30 16:10:11 +00:00
Luca Prete
89d1b5aa8b Add ability to reuse existing projects in project factory (#3051) 2025-04-21 08:57:53 +00:00
Ludovico Magnocavallo
177a9ed8bf fix names in project factory automation resources (#3046) 2025-04-18 15:42:45 +02:00
Ludo
4821ac2c07 Merge remote-tracking branch 'origin/master' into fast-dev 2025-04-16 12:13:35 +02:00
Wiktor Niesiobędzki
2d54911415 Use path as keys in project factory 2025-04-11 22:50:50 +02:00