mirror of
https://github.com/tailscale/tailscale.git
synced 2025-06-08 16:58:35 +00:00

Remove all global variables, and clean up tsnet and cmd/tailscale's usage. This is in prep for using this package for the web API too (it has the best package name). RELNOTE=tailscale.com/client/tailscale package refactored w/ LocalClient type Change-Id: Iba9f162fff0c520a09d1d4bd8862f5c5acc9d7cd Signed-off-by: Brad Fitzpatrick <bradfitz@tailscale.com>
34 lines
793 B
Go
34 lines
793 B
Go
// Copyright (c) 2020 Tailscale Inc & AUTHORS All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package cli
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
"strings"
|
|
|
|
"github.com/peterbourgon/ff/v3/ffcli"
|
|
)
|
|
|
|
var logoutCmd = &ffcli.Command{
|
|
Name: "logout",
|
|
ShortUsage: "logout [flags]",
|
|
ShortHelp: "Disconnect from Tailscale and expire current node key",
|
|
|
|
LongHelp: strings.TrimSpace(`
|
|
"tailscale logout" brings the network down and invalidates
|
|
the current node key, forcing a future use of it to cause
|
|
a reauthentication.
|
|
`),
|
|
Exec: runLogout,
|
|
}
|
|
|
|
func runLogout(ctx context.Context, args []string) error {
|
|
if len(args) > 0 {
|
|
return fmt.Errorf("too many non-flag arguments: %q", args)
|
|
}
|
|
return localClient.Logout(ctx)
|
|
}
|