1package bridgecmd
2
3import (
4 "github.com/spf13/cobra"
5
6 "github.com/git-bug/git-bug/bridge"
7 "github.com/git-bug/git-bug/commands/execenv"
8)
9
10func NewBridgeCommand(env *execenv.Env) *cobra.Command {
11 cmd := &cobra.Command{
12 Use: "bridge",
13 Short: "List bridges to other bug trackers",
14 PreRunE: execenv.LoadBackend(env),
15 RunE: execenv.CloseBackend(env, func(cmd *cobra.Command, args []string) error {
16 return runBridge(env)
17 }),
18 Args: cobra.NoArgs,
19 }
20
21 cmd.AddCommand(newBridgeAuthCommand(env))
22 cmd.AddCommand(newBridgeNewCommand(env))
23 cmd.AddCommand(newBridgePullCommand(env))
24 cmd.AddCommand(newBridgePushCommand(env))
25 cmd.AddCommand(newBridgeRm(env))
26
27 return cmd
28}
29
30func runBridge(env *execenv.Env) error {
31 configured, err := bridge.ConfiguredBridges(env.Backend)
32 if err != nil {
33 return err
34 }
35
36 for _, c := range configured {
37 env.Out.Println(c)
38 }
39
40 return nil
41}