Skip to content

Add support for Cloud Run Worker Pool Containers - #106

Merged
rkeene merged 9 commits into
mainfrom
feature/cloud-run-worker-pool-containers
Jul 28, 2026
Merged

rkeene merged 9 commits into
mainfrom
feature/cloud-run-worker-pool-containers

Conversation

@rkeene

@rkeene rkeene commented Jul 18, 2026

Copy link
Copy Markdown
Member

This change adds support for Cloud Run Worker Pool Containers, which are similar to the ContainerMIG we already provide but utilize Cloud Run Worker Pools (which recently became Generally Available).


Note

Medium Risk
Touches core GCP provisioning (VPC egress/NAT, IAM, worker topology) and removes CloudRunService stack outputs, which may break downstream Pulumi consumers.

Overview
Adds Cloud Run Worker Pools as an alternative to MIG-based background workers, selectable via mig.workerKind: 'crwp' on CloudRunService (default remains MIG).

Introduces ContainerCloudRun, which provisions a cloudrunv2.WorkerPool with shared IAM/registry setup extracted into handleGenericOptions. CRWP workers use Secret Manager env refs (cloudRunJobVariableOutput) instead of resolved plain env vars, and support egress modes (vpc, vpc+nat with optional Cloud NAT/router/route, vpc+direct). Incompatible MIG-only options (cosImage, enableSSH, allocateExternalIP) error when crwp is chosen.

ContainerMIG is refactored onto the shared options helper; registry IAM now targets Artifact Registry paths only (legacy artifacts.*.appspot.com bucket grant removed). EnvManager no longer emits a conflicting value field when env vars use secret refs.

Note: CloudRunService no longer calls registerOutputs for serviceUrl, backendService, mig, and migrationStatus at the end of its constructor.

Reviewed by Cursor Bugbot for commit eeb54f3. Bugbot is set up for automated code reviews on this repo. Configure here.

@rkeene
rkeene requested review from Srayman and ezraripps July 18, 2026 05:03
@rkeene rkeene self-assigned this Jul 18, 2026
@rkeene

rkeene commented Jul 18, 2026

Copy link
Copy Markdown
Member Author

@cursor review

Comment thread src/packages/gcp/container.ts
Comment thread src/packages/gcp/container.ts
@rkeene
rkeene marked this pull request as ready for review July 18, 2026 05:13
@rkeene
rkeene changed the base branch from process/upgrade-to-pulumi-gcp-9-30-0 to main July 27, 2026 16:45
Comment thread src/packages/gcp/apps.ts
Comment thread src/packages/gcp/apps.ts
Comment thread src/packages/gcp/apps.ts
Comment thread src/packages/gcp/apps.ts
Comment thread src/packages/gcp/apps.ts Outdated

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes using high effort and found 2 potential issues.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Want fixes drafted automatically? Bugbot Autofix can create code changes for findings. A team admin can enable Autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 8656a5e. Configure here.

Comment thread src/packages/gcp/container.ts
Comment thread src/packages/gcp/container.ts
@sonarqubecloud

Copy link
Copy Markdown

@rkeene
rkeene merged commit 7ad0090 into main Jul 28, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant