aboutsummaryrefslogtreecommitdiffstats
path: root/commands/bridge_token.go
diff options
context:
space:
mode:
Diffstat (limited to 'commands/bridge_token.go')
-rw-r--r--commands/bridge_token.go71
1 files changed, 31 insertions, 40 deletions
diff --git a/commands/bridge_token.go b/commands/bridge_token.go
index cb9754c3..f33ee3e3 100644
--- a/commands/bridge_token.go
+++ b/commands/bridge_token.go
@@ -14,8 +14,8 @@ import (
)
var (
- bridgeTokenLocalOnly bool
- bridgeTokenGlobalOnly bool
+ bridgeTokenLocal bool
+ bridgeTokenGlobal bool
)
func runTokenBridge(cmd *cobra.Command, args []string) error {
@@ -26,55 +26,46 @@ func runTokenBridge(cmd *cobra.Command, args []string) error {
defer backend.Close()
interrupt.RegisterCleaner(backend.Close)
- var tokens []*core.Token
- if !bridgeTokenGlobalOnly {
- localTokens, err := core.ListTokens(backend)
- if err != nil {
- return err
- }
+ tokens, err := core.ListTokens(backend)
+ if err != nil {
+ return err
+ }
- for _, id := range localTokens {
- token, err := core.GetToken(repo, id)
- if err != nil {
- return err
- }
- tokens = append(tokens, token)
+ for token, global := range tokens {
+ // TODO: filter tokens using flags
+ getTokenFn := core.GetToken
+ if global {
+ getTokenFn = core.GetGlobalToken
}
- }
- if !bridgeTokenLocalOnly {
- globalTokens, err := core.ListGlobalTokens(backend)
+ token, err := getTokenFn(repo, token)
if err != nil {
return err
}
-
- for _, id := range globalTokens {
- token, err := core.GetGlobalToken(repo, id)
- if err != nil {
- return err
- }
- tokens = append(tokens, token)
- }
+ printToken(token)
}
- for _, token := range tokens {
- valueFmt := text.LeftPadMaxLine(token.Value, 20, 0)
- targetFmt := text.LeftPadMaxLine(token.Target, 8, 0)
- scopesFmt := text.LeftPadMaxLine(strings.Join(token.Scopes, ","), 20, 0)
-
- fmt.Printf("%s %s %s %s\n",
- valueFmt,
- colors.Magenta(targetFmt),
- colors.Yellow(token.Global),
- scopesFmt,
- )
- }
return nil
}
+func printToken(token *core.Token) {
+ idFmt := text.LeftPadMaxLine(token.HumanId(), 6, 0)
+ valueFmt := text.LeftPadMaxLine(token.Value, 8, 0)
+ targetFmt := text.LeftPadMaxLine(token.Target, 8, 0)
+ scopesFmt := text.LeftPadMaxLine(strings.Join(token.Scopes, ","), 20, 0)
+
+ fmt.Printf("%s %s %s %s %s\n",
+ idFmt,
+ valueFmt,
+ colors.Magenta(targetFmt),
+ colors.Yellow(token.Kind()),
+ scopesFmt,
+ )
+}
+
var bridgeTokenCmd = &cobra.Command{
Use: "token",
- Short: "Configure and use bridge tokens.",
+ Short: "List all stored tokens.",
PreRunE: loadRepo,
RunE: runTokenBridge,
Args: cobra.NoArgs,
@@ -82,7 +73,7 @@ var bridgeTokenCmd = &cobra.Command{
func init() {
bridgeCmd.AddCommand(bridgeTokenCmd)
- bridgeTokenCmd.Flags().BoolVarP(&bridgeTokenLocalOnly, "local", "l", false, "")
- bridgeTokenCmd.Flags().BoolVarP(&bridgeTokenGlobalOnly, "global", "g", false, "")
+ bridgeTokenCmd.Flags().BoolVarP(&bridgeTokenLocal, "local", "l", false, "")
+ bridgeTokenCmd.Flags().BoolVarP(&bridgeTokenGlobal, "global", "g", false, "")
bridgeTokenCmd.Flags().SortFlags = false
}