feat: [COMP-2106] support VPC network and subnetworks for google-cloud compute environment - #653
Open
jonmarti wants to merge 3 commits into
Open
feat: [COMP-2106] support VPC network and subnetworks for google-cloud compute environment#653jonmarti wants to merge 3 commits into
jonmarti wants to merge 3 commits into
Conversation
…d compute environment Adds --network, --subnetworks, --network-tags and --use-private-address advanced options to the 'compute-envs add google-cloud' command, mirroring the aws-cloud VPC/subnet support. Subnetworks is a list (Intelligent Compute may spread workers across all of them; the first is used for basic placement), matching the GoogleCloudConfig model. Network tags are validated CLI-side (require a network, GCP tag format, max count) as for google-batch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
|
Remember to update the minimal required API version for this to work in https://github.com/seqeralabs/tower-cli/blob/master/VERSION-API |
The new --network/--subnetworks/--network-tags/--use-private-address options require GoogleCloudConfig network fields, introduced in Platform API 1.190.0 (current cloud production version). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Author
@stefanoboriero thanks for the heads-up , addressed in e8bda08 9647133. Bumped to 1.190.0, the version that introduced the |
Follows the VERSION-API bump: the mocked backend version in InfoCmdTest (and its service-info fixture) must be >= the CLI minimum, otherwise the info command reports the backend as older than the minimum. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
ramonamela
approved these changes
Jul 31, 2026
| @@ -1,4 +1,4 @@ | |||
| 1.181.0 | |||
| 1.190.0 | |||
Contributor
There was a problem hiding this comment.
Are you sure it's not 1.189.0? https://github.com/seqeralabs/platform/blob/master/changelog-API.md#11890
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds VPC/subnet customization to the
compute-envs add google-cloudcommand, which previously had no networking options. Mirrors the existingaws-cloudVPC/subnet support (#639).New advanced options:
--network— VPC network name or URI (defaults to the project'sdefaultnetwork)--subnetworks— comma-separated subnetworks; the first is used for basic placement, Intelligent Compute may use all of them--network-tags— firewall-targeting tags (validated: require--network, GCP tag format, max 64)--use-private-address— launch VMs without an external IPsubnetworksis a list (not singular likegoogle-batch), matching theGoogleCloudConfigSIC model where workers can be spread across a subnet pool.Also bumps the minimum required Platform API version to
1.190.0(the version that introduced theGoogleCloudConfignetwork fields, and the current cloud production API version), updating theinfocommand tests/fixture to match.Test plan
Unit tests
New tests in
GoogleCloudPlatformTest:--network+--subnetworks(list) +--use-private-address→ asserts exact request body--network-tags→ asserts tags in request body--network-tagswithout--network→ fails CLI-side ("Network tags require VPC configuration")Allow-SSH) → fails CLI-sideManual end-to-end verification
Built the CLI shadow jar and exercised the real
compute-envs add google-cloudflow against live backends, confirming each field round-trips CLI flag → API → persisted CE config.network=sic-test-vpc,subnetworks=[sic-test-subnet],networkTags=[allow-ssh, web-tier],usePrivateAddress=true✓schedEnabled=true,schedConfig={provisioningModel: ondemand, machineTypes: [n2d-standard-2]}and all four network fields persisted ✓Negative validation (tags without network, invalid tag format) confirmed to fail CLI-side against the live backend as well.
The SIC + VPC/subnet combination is the key case for COMP-2106 (VPC/subnet customization for GCP Cloud Intelligent Compute); verified the two work together.
Requires
tower-java-sdk>= 1.190.0 (already pinned).🤖 Generated with Claude Code