Skip to content

feat(vks): add remaining optional fields to create-cluster#29

Merged
vks-team merged 2 commits into
mainfrom
feat/create-cluster-optional-fields
Jul 3, 2026
Merged

feat(vks): add remaining optional fields to create-cluster#29
vks-team merged 2 commits into
mainfrom
feat/create-cluster-optional-fields

Conversation

@vks-team

@vks-team vks-team commented Jul 3, 2026

Copy link
Copy Markdown
Contributor

Summary

Give create-cluster the remaining optional CreateClusterDto fields it was missing (mirroring the create-nodegroup struct-flags treatment). Control-plane-only behavior from v1.5.0 is unchanged.

New flags

  • Simple: --secondary-subnets, --list-subnet-ids, --node-netmask-size, --service-endpoint (was hardcoded false), --az-strategy (was hardcoded SINGLE)
  • Struct (shorthand or JSON): --auto-upgrade-config, --auto-healing-config

Helper

cli.ParseStructFlag gains bool-field coercion via ParseStructFlagTyped(value, intFields, boolFields) (old signature unchanged); used for --auto-healing-config's enableAutoHealing.

--fleet-config intentionally omitted. No inline node group (create workers with create-nodegroup).

Caveat

--auto-upgrade-config with multiple weekdays must use JSON (shorthand splits on commas) — documented.

Testing

  • New tests: ParseStructFlagTyped bool coercion + bad-bool error.
  • go vet ./... clean; full go test ./... passes; build clean; verified via --help + dry-run.

🤖 Generated with Claude Code

Mirror the create-nodegroup treatment: expose the optional CreateClusterDto
fields create-cluster was missing.

- simple flags: --secondary-subnets, --list-subnet-ids, --node-netmask-size,
  --service-endpoint (was hardcoded false), --az-strategy (was hardcoded SINGLE)
- struct flags (shorthand or JSON): --auto-upgrade-config, --auto-healing-config

Extend cli.ParseStructFlag with bool-field coercion (ParseStructFlagTyped) so
--auto-healing-config's enableAutoHealing works in shorthand. --fleet-config was
intentionally left out. Note: autoUpgradeConfig.weekdays with multiple days must
use JSON (shorthand splits on commas).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vks-team vks-team changed the title feat(vks): add remaining optional fields to create-cluster feat(vks): create-cluster — add optional fields + optional inline node group Jul 3, 2026
@vks-team vks-team force-pushed the feat/create-cluster-optional-fields branch from 241b1d0 to c09cacc Compare July 3, 2026 14:54
@vks-team vks-team changed the title feat(vks): create-cluster — add optional fields + optional inline node group feat(vks): add remaining optional fields to create-cluster Jul 3, 2026
Per the CreateClusterDto spec neither subnetId nor listSubnetIds is required,
so drop --subnet-id from the required set and send subnetId only when provided.
Users can pass --subnet-id, --list-subnet-ids, or neither; the server validates.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vks-team vks-team merged commit 565e121 into main Jul 3, 2026
4 checks passed
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