// Copyright (c) 2020 Gitpod GmbH. All rights reserved. // Licensed under the GNU Affero General Public License (AGPL). // See License.AGPL.txt in the project root for license information. package cmd import ( "context" "time" "github.com/spf13/cobra" "github.com/gitpod-io/gitpod/common-go/log" "github.com/gitpod-io/gitpod/supervisor/api" ) var terminalCloseCmd = &cobra.Command{ Use: "close ", Short: "closes a terminal", Args: cobra.ExactArgs(1), Run: func(cmd *cobra.Command, args []string) { client := api.NewTerminalServiceClient(dialSupervisor()) ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second) defer cancel() _, err := client.Shutdown(ctx, &api.ShutdownTerminalRequest{ Alias: args[0], }) if err != nil { log.WithError(err).Fatal("cannot close terminals") } }, } func init() { terminalCmd.AddCommand(terminalCloseCmd) }