Skip to main content

@hivemq/gcp/iam

v2026.04.27.34

Quality score

How well-documented and verifiable this extension is.

33%

Grade F

  • Has README or module doc0/2missing
  • README has a code example0/1missing
  • README is substantive0/1pending
  • Most symbols documented1/1earned
  • No slow types1/1earned
  • Has description0/1missing
  • At least one platform tag (or universal)1/1earned
  • Two or more platform tags (or universal)1/1earned
  • License declared0/1missing
  • Verified public repository0/2missing

Install

$ swamp extension pull @hivemq/gcp/iam

@hivemq/gcp/iamv2026.03.31.1gcp_iam.ts

Global Arguments

ArgumentTypeDescription
projectIdstringGCP project ID
create_poolCreate a Workload Identity Federation pool (idempotent — skips if exists)
ArgumentTypeDescription
displayNamestringHuman-readable pool name
description?stringPool description
create_github_providerCreate a GitHub Actions OIDC provider on a WIF pool (idempotent)
ArgumentTypeDescription
poolIdstringWIF pool ID to attach the provider to
providerIdstringProvider ID (e.g. github-provider)
create_service_accountCreate a GCP service account (idempotent)
ArgumentTypeDescription
displayNamestringHuman-readable SA name
description?stringSA description
bind_service_account_to_poolGrant roles/iam.workloadIdentityUser on a SA to a WIF pool principal scoped to a GitHub repository
ArgumentTypeDescription
serviceAccountEmailstringSA email to bind
poolIdstringWIF pool ID
grant_external_project_roleGrant an IAM role to a service account on a project other than this model's own projectId (idempotent)
grant_dns_zone_roleGrant an IAM role to a service account on a specific Cloud DNS managed zone in another project (idempotent). Use this for least-privilege DNS record management scoped to one zone.
revoke_dns_zone_roleRevoke an IAM role from a service account on a specific Cloud DNS managed zone (idempotent — no-op if not granted).
grant_project_roleGrant an IAM role to a service account on the project
refresh_access_tokenExchange the local ADC refresh token for a fresh GCP access token and store it in a swamp vault. Reads credentials from application_default_credentials.json — no gcloud binary required. Defaults to vault 'swamp', key 'GCP_ACCESS_TOKEN'.
syncRefresh stored pool, provider, and service account state from the GCP API
delete_poolDelete a Workload Identity Federation pool (also deletes its providers)
ArgumentTypeDescription
poolIdstringPool ID to delete
delete_service_accountDelete a GCP service account
ArgumentTypeDescription
serviceAccountEmailstringSA email to delete

Resources

pool(infinite)— Workload Identity Federation pool
provider(infinite)— Workload Identity Federation OIDC provider
serviceAccount(infinite)— GCP service account
iamBinding(infinite)— IAM policy binding record