Use progress runner a few times
This commit is contained in:
parent
216d3bf912
commit
5879923b4f
3 changed files with 31 additions and 31 deletions
|
|
@ -28,20 +28,6 @@ func newJupyterCmd(app *App) *cobra.Command {
|
|||
return jupyterCmd
|
||||
}
|
||||
|
||||
func startJupyterServer(a *App, ctx context.Context, session *liveshare.Session) (port int, url string, err error) {
|
||||
a.StartProgressIndicatorWithLabel("Starting JupyterLab on codespace")
|
||||
defer a.StopProgressIndicator()
|
||||
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
defer safeClose(session, &err)
|
||||
|
||||
port, url, err = invoker.StartJupyterServer(ctx)
|
||||
return
|
||||
}
|
||||
|
||||
func (a *App) Jupyter(ctx context.Context, codespaceName string) (err error) {
|
||||
// Ensure all child tasks (e.g. port forwarding) terminate before return.
|
||||
ctx, cancel := context.WithCancel(ctx)
|
||||
|
|
@ -58,7 +44,17 @@ func (a *App) Jupyter(ctx context.Context, codespaceName string) (err error) {
|
|||
}
|
||||
defer safeClose(session, &err)
|
||||
|
||||
serverPort, serverUrl, err := startJupyterServer(a, ctx, session)
|
||||
serverPort, serverUrl := 0, ""
|
||||
err = a.RunWithProgress("Starting JupyterLab on codespace", func() error {
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer safeClose(invoker, &err)
|
||||
|
||||
serverPort, serverUrl, err = invoker.StartJupyterServer(ctx)
|
||||
return err
|
||||
})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
|
|||
|
|
@ -56,15 +56,17 @@ func (a *App) Logs(ctx context.Context, codespaceName string, follow bool) (err
|
|||
defer listen.Close()
|
||||
localPort := listen.Addr().(*net.TCPAddr).Port
|
||||
|
||||
a.StartProgressIndicatorWithLabel("Fetching SSH Details")
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer safeClose(invoker, &err)
|
||||
remoteSSHServerPort, sshUser := 0, ""
|
||||
err = a.RunWithProgress("Fetching SSH Details", func() error {
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer safeClose(invoker, &err)
|
||||
|
||||
remoteSSHServerPort, sshUser, err := invoker.StartSSHServer(ctx)
|
||||
a.StopProgressIndicator()
|
||||
remoteSSHServerPort, sshUser, err = invoker.StartSSHServer(ctx)
|
||||
return err
|
||||
})
|
||||
if err != nil {
|
||||
return fmt.Errorf("error getting ssh server details: %w", err)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -173,15 +173,17 @@ func (a *App) SSH(ctx context.Context, sshArgs []string, opts sshOptions) (err e
|
|||
}
|
||||
defer safeClose(session, &err)
|
||||
|
||||
a.StartProgressIndicatorWithLabel("Fetching SSH Details")
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer safeClose(invoker, &err)
|
||||
remoteSSHServerPort, sshUser := 0, ""
|
||||
err = a.RunWithProgress("Fetching SSH Details", func() error {
|
||||
invoker, err := rpc.CreateInvoker(ctx, session)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer safeClose(invoker, &err)
|
||||
|
||||
remoteSSHServerPort, sshUser, err := invoker.StartSSHServerWithOptions(ctx, startSSHOptions)
|
||||
a.StopProgressIndicator()
|
||||
remoteSSHServerPort, sshUser, err = invoker.StartSSHServerWithOptions(ctx, startSSHOptions)
|
||||
return err
|
||||
})
|
||||
if err != nil {
|
||||
return fmt.Errorf("error getting ssh server details: %w", err)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue