Skip to content

add launchables support to create#347

Open
patelspratik wants to merge 1 commit intomainfrom
launchablesupport
Open

add launchables support to create#347
patelspratik wants to merge 1 commit intomainfrom
launchablesupport

Conversation

@patelspratik
Copy link
Copy Markdown
Contributor

@patelspratik patelspratik commented Apr 4, 2026

Add a --launchable to create that least user's launch launcables

  • Accept a launchable ID (env-XXX) or console URL (https://.../launchable/deploy?launchableID=env-XXX) via --launchable flag
  • Fetch launchable details via GET /api/launchables/{id}/now and display name, description, instance type, storage, and build mode before creation
  • Populate the full workspace request from the launchable: build config (VM/container/compose), port mappings, files, location, disk storage, and lifecycle scripts
  • Set tracking labels (launchableId, launchableInstanceType, launchableCreatedByUserId, etc.) matching what the web UI sends

Flag interactions:

  • --name is optional — defaults to sanitized launchable name with random 5-digit suffix (e.g., nemoclaw-fast-boot-04821)

  • Build flags (--mode, --container-image, --compose-file, --startup-script, --jupyter) are ignored with a warning

  • Instance flags (--type, --gpu-name, etc.) are allowed but warn that overriding is not recommended

  • --dry-run shows launchable metadata and resolved instance type (works for both GPU and CPU instances)

  • Merges labels with any existing labels instead of overwriting

  • normalizeDiskStorage only appends Gi to bare numbers, passes through other suffixes

  • Falls back to launchable's workspaceGroupID when CLI can't resolve from instance type mappings

  • Reuses existing ssh.SanitizeNodeName for name sanitization

@patelspratik patelspratik requested a review from a team as a code owner April 4, 2026 01:48
@patelspratik patelspratik force-pushed the launchablesupport branch 2 times, most recently from 5e880d8 to d385b5f Compare April 7, 2026 23:23
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