diff options
Diffstat (limited to 'commands')
-rw-r--r-- | commands/bridge_auth.go | 21 | ||||
-rw-r--r-- | commands/bridge_auth_show.go | 29 | ||||
-rw-r--r-- | commands/bridge_configure.go | 2 | ||||
-rw-r--r-- | commands/bridge_pull.go | 2 | ||||
-rw-r--r-- | commands/user_adopt.go | 12 |
5 files changed, 57 insertions, 9 deletions
diff --git a/commands/bridge_auth.go b/commands/bridge_auth.go index 4e8b50c4..bfbab33c 100644 --- a/commands/bridge_auth.go +++ b/commands/bridge_auth.go @@ -37,14 +37,21 @@ func runBridgeAuth(cmd *cobra.Command, args []string) error { value = cred.Value } - user, err := backend.ResolveIdentity(cred.UserId()) - if err != nil { - return err - } - userFmt := user.DisplayName() + var userFmt string + + switch cred.UserId() { + case auth.DefaultUserId: + userFmt = colors.Red("default user") + default: + user, err := backend.ResolveIdentity(cred.UserId()) + if err != nil { + return err + } + userFmt = user.DisplayName() - if cred.UserId() == defaultUser.Id() { - userFmt = colors.Red(userFmt) + if cred.UserId() == defaultUser.Id() { + userFmt = colors.Red(userFmt) + } } fmt.Printf("%s %s %s %s %s\n", diff --git a/commands/bridge_auth_show.go b/commands/bridge_auth_show.go index 5352957d..02c56806 100644 --- a/commands/bridge_auth_show.go +++ b/commands/bridge_auth_show.go @@ -7,17 +7,46 @@ import ( "github.com/spf13/cobra" "github.com/MichaelMure/git-bug/bridge/core/auth" + "github.com/MichaelMure/git-bug/cache" + "github.com/MichaelMure/git-bug/util/colors" + "github.com/MichaelMure/git-bug/util/interrupt" ) func runBridgeAuthShow(cmd *cobra.Command, args []string) error { + backend, err := cache.NewRepoCache(repo) + if err != nil { + return err + } + defer backend.Close() + interrupt.RegisterCleaner(backend.Close) + cred, err := auth.LoadWithPrefix(repo, args[0]) if err != nil { return err } + var userFmt string + + switch cred.UserId() { + case auth.DefaultUserId: + userFmt = colors.Red("default user") + default: + user, err := backend.ResolveIdentity(cred.UserId()) + if err != nil { + return err + } + userFmt = user.DisplayName() + + defaultUser, _ := backend.GetUserIdentity() + if cred.UserId() == defaultUser.Id() { + userFmt = colors.Red(userFmt) + } + } + fmt.Printf("Id: %s\n", cred.ID()) fmt.Printf("Target: %s\n", cred.Target()) fmt.Printf("Kind: %s\n", cred.Kind()) + fmt.Printf("User: %s\n", userFmt) fmt.Printf("Creation: %s\n", cred.CreateTime().Format(time.RFC822)) switch cred := cred.(type) { diff --git a/commands/bridge_configure.go b/commands/bridge_configure.go index 26bd7bc2..0e29d06a 100644 --- a/commands/bridge_configure.go +++ b/commands/bridge_configure.go @@ -206,7 +206,7 @@ git bug bridge configure \ --target=github \ --url=https://github.com/michaelmure/git-bug \ --token=$(TOKEN)`, - PreRunE: loadRepoEnsureUser, + PreRunE: loadRepo, RunE: runBridgeConfigure, } diff --git a/commands/bridge_pull.go b/commands/bridge_pull.go index 692ec5e9..2dd3d93e 100644 --- a/commands/bridge_pull.go +++ b/commands/bridge_pull.go @@ -138,7 +138,7 @@ func parseSince(since string) (time.Time, error) { var bridgePullCmd = &cobra.Command{ Use: "pull [<name>]", Short: "Pull updates.", - PreRunE: loadRepoEnsureUser, + PreRunE: loadRepo, RunE: runBridgePull, Args: cobra.MaximumNArgs(1), } diff --git a/commands/user_adopt.go b/commands/user_adopt.go index d84d4048..a7de54d9 100644 --- a/commands/user_adopt.go +++ b/commands/user_adopt.go @@ -4,7 +4,9 @@ import ( "fmt" "os" + "github.com/MichaelMure/git-bug/bridge/core/auth" "github.com/MichaelMure/git-bug/cache" + "github.com/MichaelMure/git-bug/identity" "github.com/MichaelMure/git-bug/util/interrupt" "github.com/spf13/cobra" ) @@ -24,6 +26,16 @@ func runUserAdopt(cmd *cobra.Command, args []string) error { return err } + _, err = backend.GetUserIdentity() + if err == identity.ErrNoIdentitySet { + err = auth.ReplaceDefaultUser(repo, i.Id()) + if err != nil { + return err + } + } else if err != nil { + return err + } + err = backend.SetUserIdentity(i) if err != nil { return err |