github.com/jasonish/buffalo@v0.8.2-0.20170413145823-bacbdd415f1b/grifts/deplist.go (about) 1 package grifts 2 3 import ( 4 "fmt" 5 "os" 6 "sort" 7 "strings" 8 9 "github.com/markbates/deplist" 10 "github.com/markbates/grift/grift" 11 ) 12 13 func depList() []string { 14 list, _ := deplist.List("examples") 15 clean := []string{} 16 for v := range list { 17 if !strings.Contains(v, "gobuffalo/buffalo") { 18 clean = append(clean, v) 19 } 20 } 21 sort.Strings(clean) 22 return clean 23 } 24 25 var _ = grift.Add("deplist", func(c *grift.Context) error { 26 w, err := os.Create("deplist") 27 if err != nil { 28 return err 29 } 30 defer w.Close() 31 w.WriteString(strings.Join(depList(), "\n")) 32 return nil 33 }) 34 35 var _ = grift.Add("deplist:count", func(c *grift.Context) error { 36 fmt.Printf("%d Dependencies\n", len(depList())) 37 return nil 38 }) 39 40 var _ = grift.Add("deplist:print", func(c *grift.Context) error { 41 fmt.Println(strings.Join(depList(), "\n")) 42 return nil 43 })