diff --git a/experimental/ssh/cmd/connect.go b/experimental/ssh/cmd/connect.go index a02098923e3..8ba6e8edd01 100644 --- a/experimental/ssh/cmd/connect.go +++ b/experimental/ssh/cmd/connect.go @@ -12,11 +12,15 @@ import ( func newConnectCommand() *cobra.Command { cmd := &cobra.Command{ Use: "connect", - Short: "Connect to Databricks compute via SSH", - Long: `Connect to Databricks compute via SSH. + Short: "Connect to your Databricks compute and workspace via SSH", + Long: `Connect to your Databricks compute and workspace via SSH. -This command establishes an SSH connection to Databricks compute, setting up -the SSH server and handling the connection proxy. +Connect to serverless: + databricks ssh connect + databricks ssh connect --accelerator= # AI Runtime + +Connect to a dedicated cluster: + databricks ssh connect --cluster= ` + disclaimer, } @@ -38,17 +42,14 @@ the SSH server and handling the connection proxy. var environmentVersion int var autoApprove bool - cmd.Flags().StringVar(&clusterID, "cluster", "", "Databricks cluster ID (for dedicated clusters)") + cmd.Flags().StringVar(&clusterID, "cluster", "", "Databricks dedicated cluster ID") cmd.Flags().DurationVar(&shutdownDelay, "shutdown-delay", defaultShutdownDelay, "Delay before shutting down the server after the last client disconnects") cmd.Flags().IntVar(&maxClients, "max-clients", defaultMaxClients, "Maximum number of SSH clients") cmd.Flags().BoolVar(&autoStartCluster, "auto-start-cluster", true, "Automatically start the cluster if it is not running") - cmd.Flags().StringVar(&connectionName, "name", "", "Connection name (for serverless compute)") - cmd.Flags().MarkHidden("name") - cmd.Flags().StringVar(&accelerator, "accelerator", "", "GPU accelerator type (GPU_1xA10 or GPU_8xH100)") - cmd.Flags().MarkHidden("accelerator") + cmd.Flags().StringVar(&connectionName, "name", "", "Connection name to reuse across sessions (serverless only)") + cmd.Flags().StringVar(&accelerator, "accelerator", "", "Serverless GPU accelerator type (GPU_1xA10 or GPU_8xH100)") cmd.Flags().StringVar(&ide, "ide", "", "Open remote IDE window (vscode or cursor)") - cmd.Flags().MarkHidden("ide") cmd.Flags().BoolVar(&proxyMode, "proxy", false, "ProxyCommand mode") cmd.Flags().MarkHidden("proxy") @@ -69,7 +70,7 @@ the SSH server and handling the connection proxy. cmd.Flags().BoolVar(&skipSettingsCheck, "skip-settings-check", false, "Skip checking and updating IDE settings") cmd.Flags().MarkHidden("skip-settings-check") - cmd.Flags().IntVar(&environmentVersion, "environment-version", defaultEnvironmentVersion, "Environment version for serverless compute") + cmd.Flags().IntVar(&environmentVersion, "environment-version", defaultEnvironmentVersion, "Environment version for AI Runtime") cmd.Flags().MarkHidden("environment-version") cmd.Flags().BoolVar(&autoApprove, "auto-approve", false, "Skip confirmation prompts, installing IDE extensions and applying IDE settings without asking") diff --git a/experimental/ssh/cmd/setup.go b/experimental/ssh/cmd/setup.go index a97afa845fa..be9af601a70 100644 --- a/experimental/ssh/cmd/setup.go +++ b/experimental/ssh/cmd/setup.go @@ -12,11 +12,12 @@ import ( func newSetupCommand() *cobra.Command { cmd := &cobra.Command{ Use: "setup", - Short: "Setup SSH configuration for Databricks compute", - Long: `Setup SSH configuration for Databricks compute. + Short: "Setup SSH configuration for dedicated (single-user) clusters", + Long: `Setup SSH configuration for dedicated (single-user) clusters. -This command configures SSH to connect to Databricks compute by adding -an SSH host configuration to your SSH config file. +After running setup, you can connect with ` + "`ssh `" + `. + +For serverless connections, use ` + "`databricks ssh connect`" + ` (no setup step needed). ` + disclaimer, } diff --git a/experimental/ssh/cmd/ssh.go b/experimental/ssh/cmd/ssh.go index b1425054359..50258922422 100644 --- a/experimental/ssh/cmd/ssh.go +++ b/experimental/ssh/cmd/ssh.go @@ -13,16 +13,16 @@ const disclaimer = `WARNING! This is an experimental feature: func New() *cobra.Command { cmd := &cobra.Command{ Use: "ssh", - Short: "Connect to Databricks compute with ssh", + Short: "Connect to your Databricks compute and workspace via SSH", Hidden: true, - Long: `Connect to Databricks compute with ssh. - -SSH commands let you setup and establish ssh connections to Databricks compute. + Long: `Connect to your Databricks compute and workspace via SSH. Common workflows: - databricks ssh connect --cluster= --profile= # connect to a cluster without any setup - databricks ssh setup --name=my-compute --cluster= # update local ssh config - ssh my-compute # connect to the compute using ssh client + databricks ssh connect --ide=cursor # connect to serverless through Cursor + databricks ssh setup --name= --cluster= # update ~/.ssh/config so you can reconnect to a dedicated cluster + ssh # connect to dedicated cluster after setup + +Use ` + "`databricks ssh connect --help`" + ` to see all available flags. ` + disclaimer, }