aboutsummaryrefslogtreecommitdiffstats
path: root/commands/bridge.go
diff options
context:
space:
mode:
Diffstat (limited to 'commands/bridge.go')
-rw-r--r--commands/bridge.go48
1 files changed, 24 insertions, 24 deletions
diff --git a/commands/bridge.go b/commands/bridge.go
index 3c398e6b..46b3d9ec 100644
--- a/commands/bridge.go
+++ b/commands/bridge.go
@@ -1,43 +1,43 @@
package commands
import (
- "fmt"
-
"github.com/spf13/cobra"
"github.com/MichaelMure/git-bug/bridge"
- "github.com/MichaelMure/git-bug/cache"
- "github.com/MichaelMure/git-bug/util/interrupt"
)
-func runBridge(cmd *cobra.Command, args []string) error {
- backend, err := cache.NewRepoCache(repo)
- if err != nil {
- return err
+func newBridgeCommand() *cobra.Command {
+ env := newEnv()
+
+ cmd := &cobra.Command{
+ Use: "bridge",
+ Short: "Configure and use bridges to other bug trackers.",
+ PreRunE: loadBackend(env),
+ PostRunE: closeBackend(env),
+ RunE: func(cmd *cobra.Command, args []string) error {
+ return runBridge(env)
+ },
+ Args: cobra.NoArgs,
}
- defer backend.Close()
- interrupt.RegisterCleaner(backend.Close)
- configured, err := bridge.ConfiguredBridges(backend)
+ cmd.AddCommand(newBridgeAuthCommand())
+ cmd.AddCommand(newBridgeConfigureCommand())
+ cmd.AddCommand(newBridgePullCommand())
+ cmd.AddCommand(newBridgePushCommand())
+ cmd.AddCommand(newBridgeRm())
+
+ return cmd
+}
+
+func runBridge(env *Env) error {
+ configured, err := bridge.ConfiguredBridges(env.backend)
if err != nil {
return err
}
for _, c := range configured {
- fmt.Println(c)
+ env.out.Println(c)
}
return nil
}
-
-var bridgeCmd = &cobra.Command{
- Use: "bridge",
- Short: "Configure and use bridges to other bug trackers.",
- PreRunE: loadRepo,
- RunE: runBridge,
- Args: cobra.NoArgs,
-}
-
-func init() {
- RootCmd.AddCommand(bridgeCmd)
-}