diff options
Diffstat (limited to 'commands')
-rw-r--r-- | commands/bridge_pull.go | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/commands/bridge_pull.go b/commands/bridge_pull.go new file mode 100644 index 00000000..fc12d369 --- /dev/null +++ b/commands/bridge_pull.go @@ -0,0 +1,45 @@ +package commands + +import ( + "github.com/MichaelMure/git-bug/bridge" + "github.com/MichaelMure/git-bug/bridge/core" + "github.com/MichaelMure/git-bug/cache" + "github.com/spf13/cobra" +) + +func runBridgePull(cmd *cobra.Command, args []string) error { + backend, err := cache.NewRepoCache(repo) + if err != nil { + return err + } + defer backend.Close() + + var b *core.Bridge + + if len(args) == 0 { + b, err = bridge.DefaultBridge(backend) + } else { + b, err = bridge.NewBridgeFullName(backend, args[0]) + } + + if err != nil { + return err + } + + err = b.ImportAll() + if err != nil { + return err + } + + return nil +} + +var bridgePullCmd = &cobra.Command{ + Use: "pull [<name>]", + Short: "Pull updates", + RunE: runBridgePull, +} + +func init() { + bridgeCmd.AddCommand(bridgePullCmd) +} |