* fix(modules): allow disabling logging and configuring optional fields in LB backend services
Replaced 'log_sample_rate' (number) with 'log_config' (object) in all Load Balancer Backend Service modules. This allows explicitly disabling logging ('enable = false') and configuring advanced options like 'optional_mode' and 'optional_fields', resolving infinite plan drift and the inability to disable logging.
Affected modules:
- net-lb-app-ext-regional
- net-lb-app-ext
- net-lb-app-int-cross-region
- net-lb-app-int
- net-lb-ext
- net-lb-int
- net-lb-proxy-int
Added test cases and updated documentation.
Fixes#3914
* style: format variables files with terraform fmt
* docs: add critical linting rule for AI agents to GEMINI.md
* feat: Changes for migrating resources to GLB module
* Updated Readme
* Added support for null description
* Added support for empty string
* Added default optional values
* Changed Readme
* Corrected description according to readme
* Added name and description changes for net-lb-app-ext-regional
* Added name and description changes for net-lb-app-int
* Added name and description changes for net-lb-app-int-cross-region
* Added name and description changes for net-lb-proxy-int
* Added name and description changes for net-lb-ext
* Added name and description changes for net-lb-int
* Changed Readme docs
* Add override_name optional variable
* Add override name optional variable
* Allow override for each forwarding rule
* Add optional override_name variable to forwarding_rules_config
* Remove duplicate (unused) variable override_name
* Add optional override_name variable for network peering
* Add optional override_name variable for network peering
* Formatting
* Update VPN tunnel interface name handling for override
* Update bgp peer handling for override
* Added renaming for both sides of peering
* Fix precondition
* Remove spurious folders
* Apply suggestions to peering module
* Use coalesce and name (instead of override_name)
* remove unneeded null
* Revert windows style slashes in readme
* Fix more null checks
* Fix unneeded null checks in net-lb-int
* Change override_name back to name in the rest of the locations, bgppeer, tunnel and interface names
* Fix linter
* Update READMEs
---------
Co-authored-by: Ludovico Magnocavallo <ludomagno@google.com>
Co-authored-by: unknown <jack@JACK-PC.lfn.arpa>
Co-authored-by: jacklever-hub24 <jack.lever@hub24.com.au>
Co-authored-by: Julio Castillo <jccb@google.com>
* add service attachment support to lb app int module
* allow direct referencing of self managed ig in ilb module
* add service attachment support to net-ilb-int
* add service attachments example to net-lb-int
* fix resource name in net-lb-ext
* rename fwd rules resource in test inventories
* add toc to net-lb-int
## net-lb-int
* Fix error on apply of example:
```
Error creating RegionBackendService: googleapi: Error 400: Invalid value for field 'resource.backends[0].balancingMode': 'UTILIZATION'. Balancing mode must be CONNECTION for an INTERNAL backend service., invalid
```
* remove unused `balancing_mode` variable, as only one value is possible anyhow
## net-lb-ext
* update in the `backends` description
## net-lb-proxy-int
* update in the `backends` description
## net-lb-app-int
* added validation of `balancing_mode`
* fixed other validations
## net-lb-app-ext
* added validation of `balancing_mode`
* fixed other validations
* removed validation for `locality_lb_policy` as this variable is not used in this module
Closes: #1767