Commit Graph

1219 Commits

Author SHA1 Message Date
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
Wiktor Niesiobędzki
a5af0703f6 Add notebooks, appengine and appspot to dns policy routing 2025-06-13 16:46:44 +02:00
Ludovico Magnocavallo
9e94a0836a Improve and document org policy tags use in FAST resman stage (#3162)
* improve and document org policy tags use in resman

* tfdoc, tests
2025-06-13 15:57:48 +02:00
Ludovico Magnocavallo
7d008be2cb Allow configuring project key format in project factory (#3154)
* Configurable project key in project-factory module

* Configurable project key in project-factory module

* add tests
2025-06-11 13:18:03 +02:00
Ludovico Magnocavallo
468c0ab49a fix IAM delegation for project factory on security KMS keys (#3147) 2025-06-10 12:56:29 +02:00
Ludovico Magnocavallo
3c38bc643e add KMS keys interpolation to project factory (#3145) 2025-06-10 10:24:25 +02:00
Wiktor Niesiobędzki
29c144ac1c Improve SWP transparent gateway example 2025-06-09 09:43:23 +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
Jai Srivastav
41eaeb8ea0 Remove default values for access_config.ip_config for gke cluster modules (#3083)
* Change default values for authorized_ranges from {} to null and
gcp_public_cidrs_access_enabled from false to null in the
access_config.ip_access variable. This ensures the dynamic
master_authorized_networks_config block is properly
conditional on user input.

Previously, these fields would never be null due to their
default values, causing the block to always be initialized
even when users didn't intend to configure authorized networks.

* remove explicit null

* Remove all defaults for access_config.ip_access. Fix permadiff.

* Fix tests

* Swap try with coalesce

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-05-28 20:07:36 +00:00
Ludovico Magnocavallo
b9ea8a6c26 Allow creation of regional templates in compute-vm module (#3114)
* allow creation of regional templates in compute-vm module

* tfdoc

* fix blueprint
2025-05-27 14:18:40 +02:00
Ludovico Magnocavallo
8af9b4c845 Allow creating disks with no name in compute-vm (#3113)
* allow creating disks with no name

* update template example

* tfdoc
2025-05-27 07:19:13 +00:00
Ludovico Magnocavallo
7ce4381ac3 add support for service agent expansion to project factory IAM (#3112) 2025-05-24 12:33:20 +02:00
Julio Castillo
1eeaf21b14 Prep release 40.1.0 2025-05-21 16:20:42 +02:00
Ludovico Magnocavallo
743f771adb Add version tracking files to FAST (#3108)
* Add version tracking files to FAST

* tfdoc

* Update test counts

* inventories

* tfdoc

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-05-21 16:14:06 +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
Jay Bana
0411074a73 Improves fast/data-platform-ng README for clarity (#3074)
* Improves Data Platform README for clarity

* Quick fix to table of contents capitalization

* Fix broken link to stages README.md

* Fix broken link to stages README.md

* Add 2 diagrams.

* Update README.

* Update README.

* Fix section headings in README for consistency

* Clarify implementation details in README regarding Data Mesh principles and FAST stage integration

* Reposition folder structure diagram

* Remove Resource Hierarchy Overview section from README

* Remove diagram_resman.png from data platform development stage

* Update diagrams in README for Data Platform stage

* Refine descriptions of logical components in Data Platform architecture

* Refine README and configuration files for Data Platform stage, enhancing clarity and consistency in descriptions and structure.

* Add section for Provider and Terraform variables in README

* Remove demo files and configurations for Data Platform stage

* Fix file paths in IAM management references in README

* Add IAM principal for dp-platform and update resource counts in test files

* Update README to fix folder structure diagram order and alignment

* Fix capitalization and team naming inconsistencies in README

* Add note on IAM permissions review for production deployment in README

* Refactor IAM roles for dp-platform group in terraform.tfvars.sample

* Fix bucket name in product-0.yaml from 'exposed-ew8' to 'exposed'

---------

Co-authored-by: lcaggio <lorenzo.caggioni@gmail.com>
Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
2025-05-21 07:30:25 +00:00
Ludo
4a66fbf680 prep v39.2.0 2025-05-21 09:23:49 +02:00
Luca Prete
13a236bca2 Project Factory: fix reference to automation SAs in IAM block for service accounts (#3100)
* PF: fix reference to automation SAs in IAM block in service accounts for PF

* add test

---------

Co-authored-by: Luca Prete <lucaprete@google.com>
Co-authored-by: Ludo <ludomagno@google.com>
2025-05-20 14:01:50 +02:00
Julio Castillo
5ab29fc1c5 Disable creation of bridge perimeters (#3098)
* Disable creation of bridge perimeters

* Simplify bootsstrap test manifests
2025-05-20 09:13:27 +02:00
Ludovico Magnocavallo
7cf936dc87 Enable context replacements for IAM principals in project factory module (#3094)
* enable context replacements for iam principals in pf module

* test changes
2025-05-19 11:57:26 +00:00
Ludovico Magnocavallo
bb5426128e relax wif org policy in IaC project (#3090) 2025-05-16 07:31:22 +00:00
Ludovico Magnocavallo
212e587f77 Fix permadiff in FAST bootstrap IAM (#3089)
* Add ability to optionally update Cloud Run job containers outside Terraform.

Co-authored-by: Luca Prete <lucaprete@google.com>

* bug: mark policy_controller as optional (#3086)

* bug: mark policy_controller as optional

* Fix documentation

---------

Co-authored-by: Julio Castillo <jccb@google.com>

* fix bootstrap permadiff

* inventory

* inventory

---------

Co-authored-by: Luca Prete <preteluca@gmail.com>
Co-authored-by: Luca Prete <lucaprete@google.com>
Co-authored-by: Falcon Taylor-Carter <falconertc@gmail.com>
Co-authored-by: Julio Castillo <jccb@google.com>
2025-05-16 09:10:39 +02:00
Julio Castillo
3bda69fd26 Map secops group to security by default (#3080)
* Map secops group to security by default

* Update readmes

* Fix bootstrap inventories
2025-05-12 11:16:45 +00:00
Julio Castillo
7ceb814986 VPC SC module refactor (#3062)
* Remove bridge perimeters

* Update FAST stages

* Allow project ids in perimeter definitions

* Preserve order order for ingress/egress policies

* Use CAI

* Use CAI

* Fix tests
2025-05-09 14:37:03 +02:00
Julio Castillo
ac2193082d Merge branch 'master' into fast-dev 2025-05-09 14:23:43 +03:00
Viliam Pucik
2ce8363812 AlloyDB read poll support and various usability fixes (#3061)
* AlloyDB read poll support and various usability fixes

* Added support for read poll instances.
* Added support for public (outbound) IPs.
* Added new arguments: `machine_type`, `skip_await_major_version_upgrade`, and `subscription_type`.
* Added outputs for key cluster attributes, including ID and name.
* Improved input variable validations and simplified configurations.
* Fixed bug where AlloyDB user accounts always had null passwords.
* Resolved Terraform state drift issues for `network_config` and `psc_config`.
* Fixed `continuous_backup_config` always being implicitly or explicitly enabled.
* Fixed `automated_backup_policy` and `maintenance_update_policy`, which do not support non-zero minutes, seconds and nanos.
* Fixed various typos.
* Aligned the format of test examples.

* Fixed invalid condition: authorized external networks require enabled public IP, however enabled public IP can have empty authorized external networks

* Formatting

* Fix PSA block

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-05-09 13:03:58 +02:00
Julio Castillo
54b444f812 Merge branch 'master' into fast-dev 2025-05-09 12:44:17 +03:00
lcaggio
2d7b736657 Fix no VPC composer scenario and roles (#3075)
Fix no VPC composer scenario and roles
2025-05-09 10:49:45 +02:00
Charles Salmon
ee468514b0 [cloud-run-v2] Add ability to deploy OpenTelemetry Collector sidecar (#3071)
* [cloud-run-v2] Add ability to deploy OpenTelemetry Collector sidecar

- Adds `depends_on` flag to container definition
- Adds `port` to HTTP liveness & startup probes

* fix: add port to unmanaged resource's startup & liveness probes

* fix: add copyright boilerplate

* Fix README

---------

Co-authored-by: Julio Castillo <jccb@google.com>
2025-05-08 09:05:58 +00:00
Ludo
41b4cdef68 prep v40.0.0-rc1 2025-05-05 14:24:32 +02:00
Ludo
226c2f7ed1 Merge remote-tracking branch 'origin/master' into fast-dev 2025-05-05 14:21:46 +02:00
Ludo
46f4bb9d85 prep v39.1.0 2025-05-05 14:19:45 +02:00
Ludovico Magnocavallo
cb7bed50e3 New FAST data platform (#3066)
* copy from broken dp dev branch

* remove extra excalidraw file

* fix networking yaml

* tfdoc

* tfdoc

* nuke old data platform

* fix tests

* tests

* tflint

* high level diagram

* make location optional in composer schema

* add composer outputs

* docs

* remove schema docs

* tfdoc

* update service agent encryption composer def for composer 3

* encryption keys

* typo

* typo

* fix security IAM

* inventory

* tflint

* Fix roles and diagram.

* Fix tflint

* Fix test DP.

* Fix test

* Diagrams excalidraw gz

---------

Co-authored-by: lcaggio <lorenzo.caggioni@gmail.com>
2025-05-03 21:21:38 +00:00
Ludovico Magnocavallo
623f2b0113 Enable repd tag bindings in compute-vm module (#3063)
* enable repd tag bindings in compute-vm module

* tfdoc
2025-05-03 11:29:07 +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
Ludovico Magnocavallo
2b20654f8c better cert manager examples (#3059) 2025-04-29 12:12:39 +00:00
Julio Castillo
fdf9191460 New Managed Kafka module (#3054) 2025-04-24 06:52:03 +00:00
Luca Prete
1490b92285 Fix serverless NEG example in net-lb-app-ext (#3049) 2025-04-20 19:17:16 +00:00
Ludo
205a43a96f prepare v39.0.0 2025-04-18 17:44:29 +02:00
Ludo
2b0a9db8ed Merge branch 'fast-dev' 2025-04-18 17:34:08 +02:00
Ludo
89e68a8e22 prepare v38.2.0 2025-04-18 17:32:51 +02:00
simonebruzzechesse
1e2eea1296 2-secops stage (#3038)
* new 2-secops stage
* new 3-secops-dev stage

---------

Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
2025-04-18 15:57:29 +02:00
Wiktor Niesiobędzki
2d54911415 Use path as keys in project factory 2025-04-11 22:50:50 +02:00
Wiktor Niesiobędzki
086fe2c914 Use path as keys in project factory 2025-04-11 22:30:39 +02:00
Ludo
594a9695ab Merge remote-tracking branch 'origin/master' into fast-dev 2025-04-11 15:52:37 +02:00
simonebruzzechesse
03db2e45cf secops-rules module (#3023)
* secops-rules module
2025-04-11 15:44:31 +02:00
Simone Ruffilli
3c91acd181 Replace all instances of stackdriver.googleapis.com with log+mon (#3022)
Replace all instances of stackdriver.googleapis.com with logging.googleapis.com  and monitoring.googleapis.com.
Fixes #2932
2025-04-11 12:04:50 +00:00
Simone Ruffilli
fc84c4f60d Module: net-vpc-factory (#2982)
This pull request introduces the `net-vpc-factory` module. This new factory handles: 

* Project setup (most of what's supported by the `project` module)
* VPC setup
  * Routing
  * Subnets
* Connectivity options
  * NCC (hub, VPC spokes and VPN hybrid spokes)
  * Peerings
  * VPN (GCP-to-onprem and GCP-to-GCP)
* NAT (everything supported by the `net-cloudnat` module)
* DNS (everything supported by the `dns` module)
* Firewall (everything supported by the `net-vpc-firewall` module)
2025-04-10 11:44:39 +02:00
Julio Castillo
b2e26e50ae Enable storage.restrictAuthTypes org policy (#3017) 2025-04-08 15:43:24 +02:00