Skip to main content
← Back to list
01Issue
FeatureShippedSwamp CLI
Assigneesstack72

Relationships

#550 @swamp/gcp/iam missing serviceAccounts model type

Opened by bixu · 6/4/2026· Shipped 6/5/2026

Problem

The @swamp/gcp/iam extension (v2026.05.26.1) only exposes two model types: roles and policies. It does not cover the GCP IAM Service Accounts API — there is no @swamp/gcp/iam/serviceAccounts type for managing service accounts, keys, or bindings.

This is a significant gap because service account lifecycle (create SA → bind role → generate key → rotate key → delete key) is one of the most common IAM operations, and the current workaround is shelling out to gcloud via command/shell.

Proposed Solution

Add a serviceAccounts model type to @swamp/gcp/iam covering:

  • createiam.serviceAccounts.create
  • get / synciam.serviceAccounts.get
  • updateiam.serviceAccounts.update (display name, description)
  • deleteiam.serviceAccounts.delete
  • keys.createiam.serviceAccountKeys.create (generate JSON key)
  • keys.listiam.serviceAccountKeys.list
  • keys.deleteiam.serviceAccountKeys.delete

The generated key should be marked as sensitive: true so it flows through swamp's vault-backed secret storage rather than persisting in plaintext.

Alternatives

  • Shell out to gcloud iam service-accounts via command/shell (current workaround — not declarative, no drift detection)
  • Build a custom @hivemq/gcp/iam/serviceAccounts extension (duplicates what should be official coverage)
  • Use terraform for SA lifecycle (works but splits IAM management across two tools)
02Bog Flow
OPENTRIAGEDIN PROGRESSSHIPPED+ 1 MOREASSIGNED+ 3 MOREREVIEW+ 3 MOREPR_MERGEDSHIPPED

Shipped

6/5/2026, 4:57:36 PM

Click a lifecycle step above to view its details.

03Sludge Pulse
stack72 assigned stack726/5/2026, 3:50:56 PM

Sign in to post a ripple.