Skip to content

fix(gcp): enable the APIs that read through the host project's quota - #119

Open
tim-thacker-nullify wants to merge 3 commits into
mainfrom
fix/gcp-cloudbuild-roles-connector-apis
Open

tim-thacker-nullify wants to merge 3 commits into
mainfrom
fix/gcp-cloudbuild-roles-connector-apis

Conversation

@tim-thacker-nullify

@tim-thacker-nullify tim-thacker-nullify commented Nov 11, 2026 •

Copy link
Copy Markdown
Member

Codex

GCP scans cannot read seven service configurations when their APIs are disabled in the connector host project.

  • Enable KMS, Cloud SQL, Spanner, Dataflow, BigQuery, Org Policy and Access Context Manager APIs in the host project.
  • Expose enable_scan_quota_apis at the root module and both examples.
  • Keep Terraform strict: a blocked API causes apply failure; the root opt-out supports restricted projects.
  • Enable optional installer APIs independently with bounded retries and per-service readiness results.
  • Add mocked root-module plans and synthetic full-installer failure/retry cases.
  • Correctness confidence: high (90%); Terraform mock plans and installer regressions pass; live Google propagation remains unverified.
  • Merge risk: low to moderate; defaults enable additional APIs without changing reader roles.
  • Activation risk: customer reapply can fail under organization policy or API dependencies; opt-out is explicit.
  • The connector change is backward compatible and can merge independently of Nullify-Platform/nullify#18346; deploy its CAI reader before Cloud Build acceptance checks.
  • Existing customers need a version bump and reapply, followed by a fresh scan that verifies consumer API failures are gone.
flowchart LR
  A["Connector host project"] --> B["Terraform: strict API enablement"]
  A --> C["Installer: bounded per-API attempts"]
  B --> D["Service configuration reads"]
  C --> D
Loading

tim-thacker-nullify and others added 3 commits November 11, 2026 20:41
KMS, Cloud SQL, Spanner, Dataflow, BigQuery, Org Policy and Access Context
Manager count each read against the quota of the service account's own
project. The Nullify service account lives in the host project, so every
read of these APIs failed with "API has not been used in project <host>".
Enable them in apis.tf and install.sh, and list them in the README.

Correct docs/permissions.md: Cloud Build trigger and worker pool
configuration is read through Cloud Asset Inventory; no Cloud Build
permission is granted.

Refs FDE-3031, FDE-3030.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Move the seven scan APIs into their own `scan_quota` resource that no
other resource depends on, behind `enable_scan_quota_apis` (default
true). install.sh enables them in a separate call that warns and goes on
when it fails. Correct the stale Cloud Build comment in main.tf and leave
docs/permissions.md as it was.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tim-thacker-nullify
tim-thacker-nullify marked this pull request as ready for review November 12, 2026 03:50

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant