gitlab.com/prarit/lab@v0.14.0/cmd/mr_merge.go (about) 1 package cmd 2 3 import ( 4 "log" 5 6 "github.com/spf13/cobra" 7 lab "github.com/zaquestion/lab/internal/gitlab" 8 ) 9 10 var mrMergeCmd = &cobra.Command{ 11 Use: "merge [remote] <id>", 12 Aliases: []string{"delete"}, 13 Short: "Merge an open merge request", 14 Long: `If the pipeline for the mr is still running, lab sets merge on success`, 15 Args: cobra.MinimumNArgs(1), 16 Run: func(cmd *cobra.Command, args []string) { 17 rn, id, err := parseArgs(args) 18 if err != nil { 19 log.Fatal(err) 20 } 21 22 p, err := lab.FindProject(rn) 23 if err != nil { 24 log.Fatal(err) 25 } 26 27 err = lab.MRMerge(p.ID, int(id)) 28 if err != nil { 29 log.Fatal(err) 30 } 31 }, 32 } 33 34 func init() { 35 mrCmd.AddCommand(mrMergeCmd) 36 }