1package commands
2
3import (
4 "fmt"
5
6 "github.com/spf13/cobra"
7
8 text "github.com/MichaelMure/go-term-text"
9
10 "github.com/MichaelMure/git-bug/bridge/core"
11 "github.com/MichaelMure/git-bug/util/colors"
12)
13
14func runBridgeAuth(cmd *cobra.Command, args []string) error {
15 tokens, err := core.ListTokens(repo)
16 if err != nil {
17 return err
18 }
19
20 for _, token := range tokens {
21 token, err := core.LoadToken(repo, token)
22 if err != nil {
23 return err
24 }
25 printToken(token)
26 }
27
28 return nil
29}
30
31func printToken(token *core.Token) {
32 targetFmt := text.LeftPadMaxLine(token.Target, 10, 0)
33
34 fmt.Printf("%s %s %s %s\n",
35 colors.Cyan(token.ID().Human()),
36 colors.Yellow(targetFmt),
37 colors.Magenta("token"),
38 token.Value,
39 )
40}
41
42var bridgeAuthCmd = &cobra.Command{
43 Use: "auth",
44 Short: "List all known bridge authentication credentials.",
45 PreRunE: loadRepo,
46 RunE: runBridgeAuth,
47 Args: cobra.NoArgs,
48}
49
50func init() {
51 bridgeCmd.AddCommand(bridgeAuthCmd)
52 bridgeAuthCmd.Flags().SortFlags = false
53}