* Add support for bucket custom_placement_config to project-factory
* Copy modules/project-factory/schemas/project.schema.json to fast stages
* Add custom_placement_config (only) to schema markdown
* Update module project.schema.md
* Migrate organization policy tests to standard tftest.yaml.
Remove python-hcl2 dependency and the custom python test file.
Consolidate the boolean, list, and custom constraint tests into a single `org_policies` test with a factory equivalent.
Restructure factory files into a unified `factory/` directory.
* Migrate project and folder org policy tests to standard tftest.yaml.
Replicate the organization module changes for project and folder modules:
- Remove python-hcl2 dependency usages and conftest.py.
- Remove custom python test files for org policies.
- Consolidate org policy tests into a single `org_policies` test with a factory equivalent.
- Unify factory files into a `factory/` directory.
- Remove redundant common.tfvars in folder module.
* Add factory policies directory to duplicate-diff checks.
Ensure the YAML factory files for org policies remain perfectly identical across the organization, folder, and project modules.
* Remove unused deepdiff dependency from requirements and pre-commit config.
* Add boilerplate
* fix broken link
* feat(2-networking): add NS And DS record dynamically from sub-zones records
* tfdoc
* feat(test): 2-networking adding dns_delegations test with and without DSSEC
---------
Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
Co-authored-by: Simone Ruffilli <sruffilli@google.com>
Fixes#3819 by changing the default of `private_cluster_config` to `null` instead of an empty object, preventing the module from unintentionally generating an empty `private_cluster_config` block and treating the cluster as private when it wasn't requested.
* add ad for compute-vm refactor
* Exclue nic_type from validated fields, add split of main.tf and template.tf
* boot disk
* fix examples and fixtures
* attached disks
* fix further examples and module-level tests
* remove extra file
* fix mig examples
* finish refactoring variables
* align fast and other modules
* refactor(compute-vm): align examples and ADR with the newly implemented interface
This commit addresses the remaining references of the `instance_type` and `confidential_compute` parameters in the testing environment and updates the ADR.
* feat(compute-vm): add network_performance_config to instance and templates
This change implements the usage of the `network_performance_tier` variable we added earlier into the actual Terraform resources.
---------
Co-authored-by: Wiktor Niesiobędzki <wiktorn@google.com>
* Fix: google_logging_folder_settings takes a folder number not folder id
* chore(project-factory): Conditionally pass through logging_settings
Only pass through logging_settings to the folder module if any of the following are true:
- logging.storage_location is not null
- logging.disable_default_sink is not null
- logging.kms_key_name is not null
Else we are triggering [1] when we don't want to.
[1] https://github.com/GoogleCloudPlatform/cloud-foundation-fabric/blob/master/modules/folder/logging.tf#L59-L69
* fix(modules/organization): conditions ignored in tags
* fix(modules/project): conditions ignored in tags
* fix(modules/project): Tags:1 test skipped due to bad markdown block
---------
Co-authored-by: Julio Castillo <jccb@google.com>
* fix(alloydb): allow 1 vCPU in machine_config validation
* fix(alloydb): allow 72 vCPU in machine_config validation and cross_region_replication
* fix(alloydb): allow 1 and 72 vCPU in Read Pool. Run terraform -fmt
---------
Co-authored-by: Julio Castillo <jccb@google.com>