Codebase list golang-github-gobuffalo-packr / e0e2368
remove withstack and fix windows (#187) Mark Bates authored 5 years ago GitHub committed 5 years ago
36 changed file(s) with 140 addition(s) and 179 deletion(s). Raw diff Collapse all Expand all
1010
1111 * [github.com/gobuffalo/packr/v2](https://godoc.org/github.com/gobuffalo/packr/v2)
1212
13 * [github.com/pkg/errors](https://godoc.org/github.com/pkg/errors)
13 * [errors](https://godoc.org/errors)
1414
1515 * [github.com/spf13/cobra](https://godoc.org/github.com/spf13/cobra)
1616
1010 "runtime"
1111 "strings"
1212
13 "github.com/pkg/errors"
14
1315 "github.com/gobuffalo/packd"
14 "github.com/pkg/errors"
1516 )
1617
1718 var (
2020 func (b *box) Walk(root string) error {
2121 root, err := filepath.EvalSymlinks(root)
2222 if err != nil {
23 return errors.WithStack(err)
23 return err
2424 }
2525 if _, err := os.Stat(root); err != nil {
2626 // return nil
4040
4141 bb, err := ioutil.ReadFile(path)
4242 if err != nil {
43 return errors.WithStack(err)
43 return err
4444 }
4545 if b.compress {
4646 bb, err = compressFile(bb)
4747 if err != nil {
48 return errors.WithStack(err)
48 return err
4949 }
5050 }
5151 bb, err = json.Marshal(bb)
5252 if err != nil {
53 return errors.WithStack(err)
53 return err
5454 }
5555 f.Contents = strings.Replace(string(bb), "\"", "\\\"", -1)
5656
6565 writer := gzip.NewWriter(&buf)
6666 _, err := writer.Write(bb)
6767 if err != nil {
68 return bb, errors.WithStack(err)
68 return bb, err
6969 }
7070 err = writer.Close()
7171 if err != nil {
72 return bb, errors.WithStack(err)
72 return bb, err
7373 }
7474 return buf.Bytes(), nil
7575 }
88 "sync"
99 "text/template"
1010
11 "github.com/pkg/errors"
1211 "golang.org/x/sync/errgroup"
1312 )
1413
3837 wg := &errgroup.Group{}
3938 root, err := filepath.EvalSymlinks(b.RootPath)
4039 if err != nil {
41 return errors.WithStack(err)
40 return err
4241 }
4342 err = filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
4443 if info == nil {
6665 return nil
6766 })
6867 if err != nil {
69 return errors.WithStack(err)
68 return err
7069 }
7170 if err := wg.Wait(); err != nil {
72 return errors.WithStack(err)
71 return err
7372 }
7473 return b.dump()
7574 }
8079 f, err := os.Create(name)
8180 defer f.Close()
8281 if err != nil {
83 return errors.WithStack(err)
82 return err
8483 }
8584 t, err := template.New("").Parse(tmpl)
8685
8786 if err != nil {
88 return errors.WithStack(err)
87 return err
8988 }
9089 err = t.Execute(f, p)
9190 if err != nil {
92 return errors.WithStack(err)
91 return err
9392 }
9493 }
9594 return nil
103102
104103 v := newVisitor(path)
105104 if err := v.Run(); err != nil {
106 return errors.WithStack(err)
105 return err
107106 }
108107
109108 pk := pkg{
132131 DebugLog("building box %s\n", bx.Name)
133132 p := filepath.Join(pk.Dir, bx.Name)
134133 if err := bx.Walk(p); err != nil {
135 return errors.WithStack(err)
134 return err
136135 }
137136 if len(bx.Files) > 0 {
138137 pk.Boxes = append(pk.Boxes, *bx)
55
66 "github.com/gobuffalo/packr/v2/jam/parser"
77 "github.com/gobuffalo/packr/v2/jam/store"
8 "github.com/pkg/errors"
98 )
109
1110 // Clean up an *-packr.go files
1918 IgnoreImports: true,
2019 })
2120 if err != nil {
22 return errors.WithStack(err)
21 return err
2322 }
2423
2524 boxes, err := p.Run()
2625 if err != nil {
27 return errors.WithStack(err)
26 return err
2827 }
2928
3029 d := store.NewDisk("", "")
3130 for _, box := range boxes {
3231 if err := d.Clean(box); err != nil {
33 return errors.WithStack(err)
32 return err
3433 }
3534 }
3635 return nil
00 package builder
11
22 import (
3 "errors"
34 "go/ast"
45 "go/parser"
56 "go/token"
67 "io/ioutil"
78 "sort"
89 "strings"
9
10 "github.com/pkg/errors"
1110 )
1211
1312 type visitor struct {
2827 func (v *visitor) Run() error {
2928 b, err := ioutil.ReadFile(v.Path)
3029 if err != nil {
31 return errors.WithStack(err)
30 return err
3231 }
3332
3433 fset := token.NewFileSet()
3534 file, err := parser.ParseFile(fset, v.Path, string(b), parser.ParseComments)
3635 if err != nil {
37 return errors.WithStack(err)
36 return err
3837 }
3938
4039 v.Package = file.Name.Name
8079 case *ast.GenDecl:
8180 for _, n := range t.Specs {
8281 if err := v.eval(n); err != nil {
83 return errors.WithStack(err)
82 return err
8483 }
8584 }
8685 case *ast.FuncDecl:
8988 }
9089 for _, b := range t.Body.List {
9190 if err := v.evalStmt(b); err != nil {
92 return errors.WithStack(err)
91 return err
9392 }
9493 }
9594 return nil
9695 case *ast.ValueSpec:
9796 for _, e := range t.Values {
9897 if err := v.evalExpr(e); err != nil {
99 return errors.WithStack(err)
98 return err
10099 }
101100 }
102101 }
110109 case *ast.AssignStmt:
111110 for _, e := range t.Rhs {
112111 if err := v.evalArgs(e); err != nil {
113 return errors.WithStack(err)
112 return err
114113 }
115114 }
116115 }
131130 }
132131
133132 if err := v.evalArgs(at); err != nil {
134 return errors.WithStack(err)
133 return err
135134 }
136135 case *ast.CompositeLit:
137136 for _, e := range at.Elts {
138137 if err := v.evalExpr(e); err != nil {
139 return errors.WithStack(err)
138 return err
140139 }
141140 }
142141 }
155154 case *ast.CompositeLit:
156155 for _, e := range at.Elts {
157156 if err := v.evalExpr(e); err != nil {
158 return errors.WithStack(err)
157 return err
159158 }
160159 }
161160 // case *ast.BasicLit:
168167 switch st := at.Fun.(type) {
169168 case *ast.SelectorExpr:
170169 if err := v.evalSelector(at, st); err != nil {
171 return errors.WithStack(err)
170 return err
172171 }
173172 case *ast.Ident:
174173 return v.evalIdent(st)
175174 }
176175 for _, a := range at.Args {
177176 if err := v.evalArgs(a); err != nil {
178 return errors.WithStack(err)
177 return err
179178 }
180179 }
181180 }
22 require (
33 github.com/gobuffalo/envy v1.6.15
44 github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0
5 github.com/gobuffalo/packr/v2 v2.0.7
6 github.com/inconshreveable/mousetrap v1.0.0 // indirect
5 github.com/gobuffalo/packr/v2 v2.0.9
76 github.com/pkg/errors v0.8.1
7 github.com/rogpeppe/go-internal v1.3.0 // indirect
88 github.com/spf13/cobra v0.0.3
9 github.com/spf13/pflag v1.0.3 // indirect
109 github.com/stretchr/testify v1.3.0
1110 golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6
1211 )
00 github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
11 github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=
22 github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
3 github.com/gobuffalo/attrs v0.0.0-20190224210810-a9411de4debd/go.mod h1:4duuawTqi2wkkpB4ePgWMaai6/Kc6WEz83bhFwpHzj0=
4 github.com/gobuffalo/depgen v0.0.0-20190315122043-8442b3fa16db/go.mod h1:3STtPUQYuzV0gBVOY3vy6CfMm/ljR4pABfrTeHNLHUY=
53 github.com/gobuffalo/envy v1.6.15 h1:OsV5vOpHYUpP7ZLS6sem1y40/lNX1BZj+ynMiRi21lQ=
64 github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
7 github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs=
8 github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
9 github.com/gobuffalo/genny v0.0.0-20190315121735-8b38fb089e88/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk=
10 github.com/gobuffalo/genny v0.0.0-20190315124720-e16e52a93c79 h1:5AXgPPMHJYsMAoBnp+QHqIRl5JJ8Sq9opm50O/BrU9E=
11 github.com/gobuffalo/genny v0.0.0-20190315124720-e16e52a93c79/go.mod h1:nKeefjbhYowo36ys9nG9VUvD9FRIS0p3BC2JFfcOucM=
12 github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw=
5 github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9 h1:lGw35M+JVpedVCf08hSiBHKpp3FPTKqt6qRdXMSVAq0=
6 github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk=
137 github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5 h1:f3Fpd5AqsFuTHUEhUeEMIFJkX8FpVnzdW+GpYxIyXkA=
148 github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360=
159 github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2 h1:8thhT+kUJMTMy3HlX4+y9Da+BNJck+p109tqqKp7WDs=
1610 github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8=
1711 github.com/gobuffalo/mapi v1.0.1 h1:JRuTiZzDEZhBHkFiHTxJkYRT6CbYuL0K/rn+1byJoEA=
1812 github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
19 github.com/gobuffalo/packd v0.0.0-20190315122247-83d601d65093/go.mod h1:LpEu7OkoplvlhztyAEePkS6JwcGgANdgGL5pB4Knxaw=
2013 github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0 h1:P6naWPiHm/7R3eYx/ub3VhaW9G+1xAMJ6vzACePaGPI=
2114 github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0/go.mod h1:M2Juc+hhDXf/PnmBANFCqx4DM3wRbgDvnVWeG2RIxq4=
22 github.com/gobuffalo/packr/v2 v2.0.6/go.mod h1:/TYKOjadT7P9jRWZtj4BRTgeXy2tIYntifGkD+aM2KY=
23 github.com/gobuffalo/packr/v2 v2.0.7 h1:8Gah4OwoqvIZgsUHa07qyXNl/LtZRa4gPjtXux4fVlY=
24 github.com/gobuffalo/packr/v2 v2.0.7/go.mod h1:1SBFAIr3YnxYdJRyrceR7zhOrhV/YhHzOjDwA9LLZ5Y=
15 github.com/gobuffalo/packr/v2 v2.0.9 h1:g8P4tjthK0vAu2aopXlNNxCNsnGsWd+dbZLdc3fHSYk=
16 github.com/gobuffalo/packr/v2 v2.0.9/go.mod h1:emmyGweYTm6Kdper+iywB6YK5YzuKchGtJQZ0Odn4pQ=
2517 github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754 h1:tpom+2CJmpzAWj5/VEHync2rJGi+epHNIeRSWjzGA+4=
2618 github.com/gobuffalo/syncx v0.0.0-20190224160051-33c29581e754/go.mod h1:HhnNqWY95UYwwW3uSASeV7vtgYkT2t16hJgV3AEPUpw=
2719 github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=
4537 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
4638 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
4739 github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
48 github.com/rogpeppe/go-internal v1.2.2 h1:J7U/N7eRtzjhs26d6GqMh2HBuXP8/Z64Densiiieafo=
4940 github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
41 github.com/rogpeppe/go-internal v1.3.0 h1:RR9dF3JtopPvtkroDZuVD7qquD0bnHlKSqaQhgwt8yk=
42 github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
5043 github.com/sirupsen/logrus v1.4.0 h1:yKenngtzGh+cUSSh6GWbxW2abRqhYUSR/t/6+2QqNvE=
5144 github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
5245 github.com/spf13/cobra v0.0.3 h1:ZlrZ4XsMRm04Fr5pSFxBgfND2EBVa1nLpiy1stUsX/8=
6861 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU=
6962 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
7063 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
71 golang.org/x/tools v0.0.0-20190315044204-8b67d361bba2/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
72 golang.org/x/tools v0.0.0-20190318200714-bb1270c20edf h1:OVQ7iQXiQQT4WuYg+7S/bOVVlASHvL1Chsc15Qtkogo=
73 golang.org/x/tools v0.0.0-20190318200714-bb1270c20edf/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
64 golang.org/x/tools v0.0.0-20190329151228-23e29df326fe h1:tilCFoChsm7TcjFUH5YtBjno7wDleRO+6jICJg0WDS0=
65 golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
7466 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
7567 gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
66
77 "github.com/gobuffalo/packr"
88 "github.com/gobuffalo/packr/builder"
9 "github.com/pkg/errors"
109 "github.com/spf13/cobra"
1110 )
1211
2019 b := builder.New(context.Background(), input)
2120 err := b.Run()
2221 if err != nil {
23 return errors.WithStack(err)
22 return err
2423 }
2524
2625 cargs := []string{"build"}
88
99 "github.com/gobuffalo/packr"
1010 "github.com/gobuffalo/packr/builder"
11 "github.com/pkg/errors"
1211 "github.com/spf13/cobra"
1312 )
1413
2322 if !strings.HasPrefix(input, ".") {
2423 input = filepath.Join(packr.GoPath(), "src", input)
2524 if _, err := os.Stat(input); err != nil {
26 return errors.WithStack(err)
25 return err
2726 }
2827 }
2928 }
3130 b := builder.New(context.Background(), input)
3231 err := b.Run()
3332 if err != nil {
34 return errors.WithStack(err)
33 return err
3534 }
3635
3736 cargs := []string{"install"}
2424
2525 * [github.com/markbates/safe](https://godoc.org/github.com/markbates/safe)
2626
27 * [github.com/pkg/errors](https://godoc.org/github.com/pkg/errors)
27 * [errors](https://godoc.org/errors)
2828
2929 * [github.com/rogpeppe/go-internal](https://godoc.org/github.com/rogpeppe/go-internal)
3030
1616 "github.com/gobuffalo/packr/v2/file/resolver"
1717 "github.com/gobuffalo/packr/v2/plog"
1818 "github.com/markbates/oncer"
19 "github.com/pkg/errors"
19 "errors"
2020 )
2121
2222 var _ packd.Box = &Box{}
9090 m := map[string]file.File{}
9191 f, err := file.NewFile(path, t)
9292 if err != nil {
93 return errors.WithStack(err)
93 return err
9494 }
9595 m[resolver.Key(path)] = f
9696 res := resolver.NewInMemory(m)
223223 }
224224 b, err := ioutil.ReadAll(f)
225225 if err != nil {
226 return f, errors.WithStack(err)
226 return f, err
227227 }
228228 f, err = file.NewFile(key, b)
229229 if err != nil {
230 return f, errors.WithStack(err)
230 return f, err
231231 }
232232 }
233233 plog.Debug(r, "Resolve", "box", b.Name, "key", key, "file", f.Name())
99 "github.com/gobuffalo/packr/v2/file"
1010 "github.com/gobuffalo/packr/v2/plog"
1111 "github.com/karrick/godirwalk"
12 "github.com/pkg/errors"
1312 )
1413
1514 var _ Resolver = &Disk{}
6059 name := strings.TrimPrefix(path, root+string(filepath.Separator))
6160 b, err := ioutil.ReadFile(path)
6261 if err != nil {
63 return errors.WithStack(err)
62 return err
6463 }
6564 m[name], err = file.NewFile(name, b)
6665 if err != nil {
67 return errors.WithStack(err)
66 return err
6867 }
6968 moot.Unlock()
7069 return nil
1212 "github.com/gobuffalo/packr/v2/plog"
1313
1414 "github.com/gobuffalo/packr/v2/file"
15 "github.com/pkg/errors"
1615 )
1716
1817 var _ Resolver = &HexGzip{}
6059
6160 unpacked, err := UnHexGzipString(packed)
6261 if err != nil {
63 return nil, errors.WithStack(err)
62 return nil, err
6463 }
6564
6665 f, err := file.NewFile(OsPath(name), []byte(unpacked))
6766 if err != nil {
68 return nil, errors.WithStack(err)
67 return nil, err
6968 }
7069 hg.unpacked[name] = f.String()
7170 return f, nil
10099 dec := hex.NewDecoder(br)
101100 zr, err := gzip.NewReader(dec)
102101 if err != nil {
103 return "", errors.WithStack(err)
102 return "", err
104103 }
105104 defer zr.Close()
106105
107106 b, err := ioutil.ReadAll(zr)
108107 if err != nil {
109 return "", errors.WithStack(err)
108 return "", err
110109 }
111110 return string(b), nil
112111 }
55 "github.com/gobuffalo/packd"
66 "github.com/gobuffalo/packr/v2/file"
77 "github.com/gobuffalo/packr/v2/plog"
8 "github.com/pkg/errors"
98 )
109
1110 var _ Resolver = &InMemory{}
3029 plog.Debug(d, "Pack", "name", name)
3130 b, err := ioutil.ReadAll(f)
3231 if err != nil {
33 return errors.WithStack(err)
32 return err
3433 }
3534 d.AddBytes(name, b)
3635 return nil
11
22 require (
33 github.com/gobuffalo/envy v1.6.15
4 github.com/gobuffalo/genny v0.0.0-20190329153409-7be1b23270eb
4 github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e
55 github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5
66 github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2
77 github.com/gobuffalo/packd v0.0.0-20190315124812-a385830c7fc0
88 github.com/karrick/godirwalk v1.8.0
9 github.com/konsorten/go-windows-terminal-sequences v1.0.2 // indirect
109 github.com/markbates/oncer v0.0.0-20181203154359-bf2de49a0be2
1110 github.com/markbates/safe v1.0.1
1211 github.com/pkg/errors v0.8.1
13 github.com/rogpeppe/go-internal v1.2.2
14 github.com/sirupsen/logrus v1.4.0
12 github.com/rogpeppe/go-internal v1.3.0
13 github.com/sirupsen/logrus v1.4.1
1514 github.com/spf13/cobra v0.0.3
1615 github.com/stretchr/testify v1.3.0
17 golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c // indirect
1816 golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6
19 golang.org/x/sys v0.0.0-20190329044733-9eb1bfa1ce65 // indirect
20 golang.org/x/tools v0.0.0-20190330163440-a68386b9fffe
17 golang.org/x/tools v0.0.0-20190404132500-923d25813098
2118 )
66 github.com/gobuffalo/envy v1.6.15/go.mod h1:n7DRkBerg/aorDM8kbduw5dN3oXGswK5liaSCx4T5NI=
77 github.com/gobuffalo/flect v0.1.0/go.mod h1:d2ehjJqGOH/Kjqcoz+F7jHTBbmDb38yXA598Hb50EGs=
88 github.com/gobuffalo/flect v0.1.1/go.mod h1:8JCgGVbRjJhVgD6399mQr4fx5rRfGKVzFjbj6RE/9UI=
9 github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9 h1:lGw35M+JVpedVCf08hSiBHKpp3FPTKqt6qRdXMSVAq0=
109 github.com/gobuffalo/genny v0.0.0-20190329151137-27723ad26ef9/go.mod h1:rWs4Z12d1Zbf19rlsn0nurr75KqhYp52EAGGxTbBhNk=
11 github.com/gobuffalo/genny v0.0.0-20190329153409-7be1b23270eb h1:IUtUgwYRIQOHgmCP8uAUjKQNJKUxICmptd1gMggAytA=
12 github.com/gobuffalo/genny v0.0.0-20190329153409-7be1b23270eb/go.mod h1:WGiyExKBGcMizwBYYmNL3LIyTRMP6wJQaD7MEYuM7Zk=
10 github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e h1:JbHBQOMhE0wmpSuejnSkdnL2rULqQTwEGgVe85o7+No=
11 github.com/gobuffalo/genny v0.0.0-20190403191548-3ca520ef0d9e/go.mod h1:80lIj3kVJWwOrXWWMRzzdhW3DsrdjILVil/SFKBzF28=
1312 github.com/gobuffalo/gitgen v0.0.0-20190315122116-cc086187d211/go.mod h1:vEHJk/E9DmhejeLeNt7UVvlSGv3ziL+djtTr3yyzcOw=
1413 github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5 h1:f3Fpd5AqsFuTHUEhUeEMIFJkX8FpVnzdW+GpYxIyXkA=
1514 github.com/gobuffalo/gogen v0.0.0-20190315121717-8f38393713f5/go.mod h1:V9QVDIxsgKNZs6L2IYiGR8datgMhB577vzTDqypH360=
1615 github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2 h1:8thhT+kUJMTMy3HlX4+y9Da+BNJck+p109tqqKp7WDs=
1716 github.com/gobuffalo/logger v0.0.0-20190315122211-86e12af44bc2/go.mod h1:QdxcLw541hSGtBnhUc4gaNIXRjiDppFGaDqzbrBd3v8=
18 github.com/gobuffalo/mapi v1.0.1 h1:JRuTiZzDEZhBHkFiHTxJkYRT6CbYuL0K/rn+1byJoEA=
1917 github.com/gobuffalo/mapi v1.0.1/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
2018 github.com/gobuffalo/mapi v1.0.2 h1:fq9WcL1BYrm36SzK6+aAnZ8hcp+SrmnDyAxhNx8dvJk=
2119 github.com/gobuffalo/mapi v1.0.2/go.mod h1:4VAGh89y6rVOvm5A8fKFxYG+wIW6LO1FMTG9hnKStFc=
3230 github.com/karrick/godirwalk v1.8.0/go.mod h1:H5KPZjojv4lE+QYImBI8xVtrBRgYrIVsaRPx4tDPEn4=
3331 github.com/konsorten/go-windows-terminal-sequences v1.0.1 h1:mweAR1A6xJ3oS2pRaGiHgQ4OO8tzTaLawm8vnODuwDk=
3432 github.com/konsorten/go-windows-terminal-sequences v1.0.1/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
35 github.com/konsorten/go-windows-terminal-sequences v1.0.2 h1:DB17ag19krx9CFsz4o3enTrPXyIXCl+2iCXH/aMAp9s=
36 github.com/konsorten/go-windows-terminal-sequences v1.0.2/go.mod h1:T0+1ngSBFLxvqU3pZ+m/2kptfBszLMUkC4ZK/EgS/cQ=
3733 github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo=
3834 github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ=
3935 github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
4743 github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
4844 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
4945 github.com/rogpeppe/go-internal v1.1.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
50 github.com/rogpeppe/go-internal v1.2.2 h1:J7U/N7eRtzjhs26d6GqMh2HBuXP8/Z64Densiiieafo=
5146 github.com/rogpeppe/go-internal v1.2.2/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
52 github.com/sirupsen/logrus v1.4.0 h1:yKenngtzGh+cUSSh6GWbxW2abRqhYUSR/t/6+2QqNvE=
47 github.com/rogpeppe/go-internal v1.3.0 h1:RR9dF3JtopPvtkroDZuVD7qquD0bnHlKSqaQhgwt8yk=
48 github.com/rogpeppe/go-internal v1.3.0/go.mod h1:M8bDsm7K2OlrFYOpmOWEs/qY81heoFRclV5y23lUDJ4=
5349 github.com/sirupsen/logrus v1.4.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
50 github.com/sirupsen/logrus v1.4.1 h1:GL2rEmy6nsikmW0r8opw9JIRScdMF5hA8cOYLH7In1k=
51 github.com/sirupsen/logrus v1.4.1/go.mod h1:ni0Sbl8bgC9z8RoU9G6nDWqqs/fq4eDPysMBDgk/93Q=
5452 github.com/spf13/cobra v0.0.3 h1:ZlrZ4XsMRm04Fr5pSFxBgfND2EBVa1nLpiy1stUsX/8=
5553 github.com/spf13/cobra v0.0.3/go.mod h1:1l0Ry5zgKvJasoi3XT1TypsSe7PqH0Sj9dhYf7v3XqQ=
5654 github.com/spf13/pflag v1.0.3 h1:zPAT6CGy6wXeQ7NtTnaTerfKOsV6V6F8agHXFiazDkg=
6361 golang.org/x/crypto v0.0.0-20180904163835-0709b304e793/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4=
6462 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2 h1:VklqNMn3ovrHsnt90PveolxSbWFaJdECFbxSq0Mqo2M=
6563 golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
66 golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c h1:Vj5n4GlwjmQteupaxJ9+0FNOmBrHfq7vN4btdGoDZgI=
67 golang.org/x/crypto v0.0.0-20190325154230-a5d413f7728c/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w=
68 golang.org/x/net v0.0.0-20190311183353-d8887717615a h1:oWX7TPOiFAMXLq8o0ikBYfCJVlRHBcsciT5bXOrH628=
6964 golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
7065 golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6 h1:bjcUS9ztw9kFmmIxJInhon/0Is3p+EHBKNgquIzo1OI=
7166 golang.org/x/sync v0.0.0-20190227155943-e225da77a7e6/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
7267 golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
7368 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a h1:1BGLXjeY4akVXGgbC9HugT3Jv3hCI0z56oJR5vAMgBU=
7469 golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
75 golang.org/x/sys v0.0.0-20190329044733-9eb1bfa1ce65 h1:hOY+O8MxdkPV10pNf7/XEHaySCiPKxixMKUshfHsGn0=
76 golang.org/x/sys v0.0.0-20190329044733-9eb1bfa1ce65/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
7770 golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
78 golang.org/x/tools v0.0.0-20190329151228-23e29df326fe h1:tilCFoChsm7TcjFUH5YtBjno7wDleRO+6jICJg0WDS0=
7971 golang.org/x/tools v0.0.0-20190329151228-23e29df326fe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
80 golang.org/x/tools v0.0.0-20190330163440-a68386b9fffe h1:TSwzZtGyXzhKPLhVz/4DSkDWaEwA5tC5kFS0Y4QXaSE=
81 golang.org/x/tools v0.0.0-20190330163440-a68386b9fffe/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
72 golang.org/x/tools v0.0.0-20190404132500-923d25813098 h1:MtqjsZmyGRgMmLUgxnmMJ6RYdvd2ib8ipiayHhqSxs4=
73 golang.org/x/tools v0.0.0-20190404132500-923d25813098/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
8274 gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0=
8375 gopkg.in/errgo.v2 v2.1.0/go.mod h1:hNsd1EY+bozCKY1Ytp96fpM3vjJbqLJn88ws8XvfDNI=
1010 "github.com/gobuffalo/packr/v2/jam/parser"
1111 "github.com/gobuffalo/packr/v2/jam/store"
1212 "github.com/gobuffalo/packr/v2/plog"
13 "github.com/pkg/errors"
1413 )
1514
1615 // PackOptions ...
2524 func Pack(opts PackOptions) error {
2625 pwd, err := os.Getwd()
2726 if err != nil {
28 return errors.WithStack(err)
27 return err
2928 }
3029
3130 opts.Roots = append(opts.Roots, pwd)
3231 if err := Clean(opts.Roots...); err != nil {
33 return errors.WithStack(err)
32 return err
3433 }
3534
3635 p, err := parser.NewFromRoots(opts.Roots, &parser.RootsOptions{
3736 IgnoreImports: opts.IgnoreImports,
3837 })
3938 if err != nil {
40 return errors.WithStack(err)
39 return err
4140 }
4241 boxes, err := p.Run()
4342 if err != nil {
44 return errors.WithStack(err)
43 return err
4544 }
4645
4746 // reduce boxes - remove ones we don't want
6665 continue
6766 }
6867 if err := st.Pack(b); err != nil {
69 return errors.WithStack(err)
68 return err
7069 }
7170 }
7271 if cl, ok := st.(io.Closer); ok {
7978 func ShellPack(opts PackOptions, boxes parser.Boxes) error {
8079 b, err := json.Marshal(boxes)
8180 if err != nil {
82 return errors.WithStack(err)
81 return err
8382 }
8483 ctx, cancel := context.WithTimeout(context.Background(), 60*time.Second)
8584 defer cancel()
9493 func Clean(args ...string) error {
9594 pwd, err := os.Getwd()
9695 if err != nil {
97 return errors.WithStack(err)
96 return err
9897 }
9998 args = append(args, pwd)
10099 for _, root := range args {
101100 if err := store.Clean(root); err != nil {
102 return errors.WithStack(err)
101 return err
103102 }
104103 }
105104 return nil
22 import (
33 "encoding/json"
44
5 "github.com/pkg/errors"
5 "errors"
66 )
77
88 // FromArgs is useful when writing packr store-cmd binaries.
6363 if err != nil {
6464 if !strings.Contains(err.Error(), "cannot find package") {
6565 if _, ok := errors.Cause(err).(*build.NoGoError); !ok {
66 err = errors.WithStack(err)
66 err = err
6767 return
6868 }
6969 }
55 "strings"
66
77 "github.com/gobuffalo/packr/v2/plog"
8 "github.com/pkg/errors"
98 )
109
1110 // Parser to find boxes
2221 v := NewVisitor(pros)
2322 pbr, err := v.Run()
2423 if err != nil {
25 return boxes, errors.WithStack(err)
24 return boxes, err
2625 }
2726 for _, b := range pbr {
2827 plog.Debug(p, "Run", "file", pros.Name(), "box", b.Name)
99
1010 "github.com/gobuffalo/packr/v2/plog"
1111 "github.com/karrick/godirwalk"
12 "github.com/pkg/errors"
1312 )
1413
1514 type RootsOptions struct {
5655 plog.Debug(p, "NewFromRoots", "walking", root)
5756 err := godirwalk.Walk(root, wopts)
5857 if err != nil {
59 return p, errors.WithStack(err)
58 return p, err
6059 }
6160 }
6261
8079 plog.Debug(p, "NewFromRoots", "reading file", path)
8180 b, err := ioutil.ReadFile(path)
8281 if err != nil {
83 return nil, errors.WithStack(err)
82 return nil, err
8483 }
8584 p.Prospects = append(p.Prospects, NewFile(path, bytes.NewReader(b)))
8685 }
7575 case *ast.GenDecl:
7676 for _, n := range t.Specs {
7777 if err := v.eval(n); err != nil {
78 return errors.WithStack(err)
78 return err
7979 }
8080 }
8181 case *ast.FuncDecl:
8484 }
8585 for _, b := range t.Body.List {
8686 if err := v.evalStmt(b); err != nil {
87 return errors.WithStack(err)
87 return err
8888 }
8989 }
9090 return nil
9191 case *ast.ValueSpec:
9292 for _, e := range t.Values {
9393 if err := v.evalExpr(e); err != nil {
94 return errors.WithStack(err)
94 return err
9595 }
9696 }
9797 }
105105 case *ast.AssignStmt:
106106 for _, e := range t.Rhs {
107107 if err := v.evalArgs(e); err != nil {
108 return errors.WithStack(err)
108 return err
109109 }
110110 }
111111 }
126126 }
127127
128128 if err := v.evalArgs(at); err != nil {
129 return errors.WithStack(err)
129 return err
130130 }
131131 case *ast.CompositeLit:
132132 for _, e := range at.Elts {
133133 if err := v.evalExpr(e); err != nil {
134 return errors.WithStack(err)
134 return err
135135 }
136136 }
137137 }
150150 case *ast.CompositeLit:
151151 for _, e := range at.Elts {
152152 if err := v.evalExpr(e); err != nil {
153 return errors.WithStack(err)
153 return err
154154 }
155155 }
156156 case *ast.CallExpr:
160160 switch st := at.Fun.(type) {
161161 case *ast.SelectorExpr:
162162 if err := v.evalSelector(at, st); err != nil {
163 return errors.WithStack(err)
163 return err
164164 }
165165 case *ast.Ident:
166166 return v.evalIdent(st)
167167 }
168168 for _, a := range at.Args {
169169 if err := v.evalArgs(a); err != nil {
170 return errors.WithStack(err)
170 return err
171171 }
172172 }
173173 }
210210
211211 k1, err := zz(expr.Args[0])
212212 if err != nil {
213 return errors.WithStack(err)
213 return err
214214 }
215215 k2, err := zz(expr.Args[1])
216216 if err != nil {
217 return errors.WithStack(err)
217 return err
218218 }
219219 v.addBox(k1, k2)
220220
190190 github.com/onsi/gomega v1.4.1/go.mod h1:C1qb7wdrVGGVU+Z6iS04AVkA3Q65CEZX59MT0QO5uiA=
191191 github.com/onsi/gomega v1.4.2/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY=
192192 github.com/pelletier/go-toml v1.2.0/go.mod h1:5z9KED0ma1S8pY6P1sdut58dfprrGBbd/94hg7ilaic=
193 github.com/pkg/errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
194 github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
193 errors v0.8.0 h1:WdK/asTD0HN+q6hsWO3/vpuAkAr+tw6aNJNDFFf0+qw=
194 errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
195195 github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
196196 github.com/satori/go.uuid v1.2.0/go.mod h1:dA0hQrYB0VpLJoorglMZABFdXlWrHn1NEOzdhQKdks0=
197197 github.com/serenize/snaker v0.0.0-20171204205717-a683aaf2d516/go.mod h1:Yow6lPLSAXx2ifx470yD/nUe22Dv5vBvxK/UK9UUTVs=
55 "strings"
66
77 "github.com/gobuffalo/packr/v2/jam/parser"
8 "github.com/pkg/errors"
98 )
109
1110 func Clean(root string) error {
1615
1716 p, err := parser.NewFromRoots([]string{root}, &parser.RootsOptions{})
1817 if err != nil {
19 return errors.WithStack(err)
18 return err
2019 }
2120
2221 boxes, err := p.Run()
2322 if err != nil {
24 return errors.WithStack(err)
23 return err
2524 }
2625
2726 d := NewDisk("", "")
2827 for _, box := range boxes {
2928 if err := d.Clean(box); err != nil {
30 return errors.WithStack(err)
29 return err
3130 }
3231 }
3332 return nil
3736 if len(root) == 0 {
3837 pwd, err := os.Getwd()
3938 if err != nil {
40 return errors.WithStack(err)
39 return err
4140 }
4241 root = pwd
4342 }
5150
5251 err := filepath.Walk(root, func(path string, info os.FileInfo, err error) error {
5352 if err != nil {
54 return errors.WithStack(err)
53 return err
5554 }
5655 if info.IsDir() {
5756 if filepath.Base(path) == "packrd" {
6261 if strings.HasSuffix(path, "-packr.go") {
6362 err := os.RemoveAll(path)
6463 if err != nil {
65 return errors.WithStack(err)
64 return err
6665 }
6766 }
6867 return nil
6968 })
7069 if err != nil {
71 return errors.WithStack(err)
70 return err
7271 }
7372
7473 return nil
2424 "github.com/gobuffalo/packr/v2/plog"
2525 "github.com/rogpeppe/go-internal/modfile"
2626
27 "github.com/pkg/errors"
28
2729 "github.com/gobuffalo/packr/v2/jam/parser"
2830 "github.com/karrick/godirwalk"
29 "github.com/pkg/errors"
3031 "golang.org/x/sync/errgroup"
3132 )
3233
8788 var files []*parser.File
8889 names, err := d.FileNames(box)
8990 if err != nil {
90 return files, errors.WithStack(err)
91 return files, err
9192 }
9293 for _, n := range names {
9394 b, err := ioutil.ReadFile(n)
9495 if err != nil {
95 return files, errors.WithStack(err)
96 return files, err
9697 }
9798 f := parser.NewFile(n, bytes.NewReader(b))
9899 files = append(files, f)
105106 d.boxes[box.Name] = box
106107 names, err := d.FileNames(box)
107108 if err != nil {
108 return errors.WithStack(err)
109 return err
109110 }
110111 for _, n := range names {
111112 _, ok := d.global[n]
162163 zw := gzip.NewWriter(enc)
163164 f, err := os.Open(k)
164165 if err != nil {
165 return errors.WithStack(err)
166 return err
166167 }
167168 defer f.Close()
168169 io.Copy(zw, f)
169170 if err := zw.Close(); err != nil {
170 return errors.WithStack(err)
171 return err
171172 }
172173 d.moot.Lock()
173174 opts.GlobalFiles[makeKey(xb, k)] = bb.String()
178179 }
179180
180181 if err := wg.Wait(); err != nil {
181 return g, errors.WithStack(err)
182 return g, err
182183 }
183184
184185 for _, b := range d.boxes {
200201 }
201202 fn, err := d.FileNames(box)
202203 if err != nil {
203 return "", errors.WithStack(err)
204 return "", err
204205 }
205206 if len(fn) == 0 {
206207 return "", nil
228229 t := gogen.TemplateTransformer(opts, nil)
229230 gf, err = t.Transform(gf)
230231 if err != nil {
231 return "", errors.WithStack(err)
232 return "", err
232233 }
233234 return template.HTML(gf.String()), nil
234235 },
239240 global := genny.NewFile(fp, strings.NewReader(diskGlobalTmpl))
240241 global, err := t.Transform(global)
241242 if err != nil {
242 return g, errors.WithStack(err)
243 return g, err
243244 }
244245
245246 ft := gogen.FmtTransformer()
246247 global, err = ft.Transform(global)
247248 if err != nil {
248 return g, errors.WithStack(err)
249 return g, err
249250 }
250251 g.File(global)
251252
278279 return g, errors.New("go.mod is malformed.")
279280 }
280281 ip = filepath.Join(ip, strings.TrimPrefix(filepath.Dir(d.DBPath), filepath.Dir(mp)))
282 ip = strings.Replace(ip, "\\", "/", -1)
281283 } else {
282284 ip = filepath.Dir(d.DBPath)
283285 srcs := envy.GoPaths()
326328 run := genny.WetRunner(context.Background())
327329 run.Logger = plog.Logger
328330 if err := run.WithNew(d.Generator()); err != nil {
329 return errors.WithStack(err)
331 return err
330332 }
331333 return run.Run()
332334 }
77 "path/filepath"
88 "sort"
99 "strings"
10
11 "github.com/pkg/errors"
1210
1311 "github.com/gobuffalo/genny"
1412 "github.com/gobuffalo/gogen"
3331 func (l *Legacy) Pack(box *parser.Box) error {
3432 files, err := l.Files(box)
3533 if err != nil {
36 return errors.WithStack(err)
34 return err
3735 }
3836
3937 var fcs []legacyFile
4240 n := strings.TrimPrefix(f.Name(), box.AbsPath+string(filepath.Separator))
4341 c, err := l.prepFile(f)
4442 if err != nil {
45 return errors.WithStack(err)
43 return err
4644 }
4745 fcs = append(fcs, legacyFile{Name: n, Contents: c})
4846 }
6159
6260 // run := genny.WetRunner(context.Background())
6361 // if err := run.WithNew(l.Generator(box)); err != nil {
64 // return errors.WithStack(err)
62 // return err
6563 // }
6664 // run.Logger = plog.Logger
6765 // return run.Run()
7068 func (l *Legacy) prepFile(r io.Reader) (string, error) {
7169 bb := &bytes.Buffer{}
7270 if _, err := io.Copy(bb, r); err != nil {
73 return "", errors.WithStack(err)
71 return "", err
7472 }
7573 b, err := json.Marshal(bb.Bytes())
7674 if err != nil {
77 return "", errors.WithStack(err)
75 return "", err
7876 }
7977 return strings.Replace(string(b), "\"", "\\\"", -1), nil
8078 }
9593 t := gogen.TemplateTransformer(opts, nil)
9694 f, err := t.Transform(f)
9795 if err != nil {
98 return g, errors.WithStack(err)
96 return g, err
9997 }
10098 g.File(f)
10199 }
105103 func (l *Legacy) Close() error {
106104 run := genny.WetRunner(context.Background())
107105 if err := run.WithNew(l.Generator()); err != nil {
108 return errors.WithStack(err)
106 return err
109107 }
110108 run.Logger = plog.Logger
111109 return run.Run()
11
22 import (
33 "github.com/gobuffalo/packr/v2/jam"
4 "github.com/pkg/errors"
54 "github.com/spf13/cobra"
65 )
76
1211 RunE: func(cmd *cobra.Command, args []string) error {
1312 cargs := parseArgs(args)
1413 if err := jam.Pack(globalOptions.PackOptions); err != nil {
15 return errors.WithStack(err)
14 return err
1615 }
1716 return goCmd("build", cargs...)
1817 },
77
88 "github.com/gobuffalo/envy"
99 "github.com/gobuffalo/packr/v2/jam/store"
10 "github.com/pkg/errors"
1110 )
1211
1312 var modsOn = (strings.TrimSpace(envy.Get("GO111MODULE", "off")) == "on")
3130 func packrClean(r *Runner) error {
3231 pwd, err := os.Getwd()
3332 if err != nil {
34 return errors.WithStack(err)
33 return err
3534 }
3635 store.Clean(pwd)
3736 return nil
1212 "strconv"
1313 "strings"
1414
15 "github.com/pkg/errors"
1615 "golang.org/x/tools/go/ast/astutil"
1716 )
1817
2928
3029 err := filepath.Walk(".", c.processFile)
3130 if err != nil {
32 return errors.WithStack(err)
31 return err
3332 }
3433
3534 if _, err := os.Stat("Gopkg.toml"); err != nil {
3837
3938 b, err := ioutil.ReadFile("Gopkg.toml")
4039 if err != nil {
41 return errors.WithStack(err)
40 return err
4241 }
4342
4443 for k := range c.Data {
5453 er := onlyRelevantFiles(p, info, err, func(p string) error {
5554 err := c.rewriteFile(p)
5655 if err != nil {
57 err = errors.WithStack(err)
56 err = err
5857 }
5958
6059 return err
33 "fmt"
44
55 packr "github.com/gobuffalo/packr/v2"
6 "github.com/pkg/errors"
76 )
87
98 // Check interface for runnable checker functions
4039
4140 for _, c := range checks {
4241 if err := c(r); err != nil {
43 return errors.WithStack(err)
42 return err
4443 }
4544 }
4645 return nil
88
99 "github.com/gobuffalo/genny"
1010 "github.com/gobuffalo/packr/v2/plog"
11 "github.com/pkg/errors"
1211 )
1312
1413 func goCmd(name string, args ...string) error {
2019
2120 pwd, err := os.Getwd()
2221 if err != nil {
23 return errors.WithStack(err)
22 return err
2423 }
2524
2625 if fi, err := os.Stat(filepath.Join(pwd, args[len(args)-1])); err == nil {
3635
3736 path, err = filepath.Abs(filepath.Dir(path))
3837 if err != nil {
39 return errors.WithStack(err)
38 return err
4039 }
4140
4241 files, err := ioutil.ReadDir(path)
4342 if err != nil {
44 return errors.WithStack(err)
43 return err
4544 }
4645 for _, f := range files {
4746 if strings.HasSuffix(f.Name(), "-packr.go") {
5150 return nil
5251 }()
5352 if err != nil {
54 return errors.WithStack(err)
53 return err
5554 }
5655 }
5756 cp := exec.Command(genny.GoBin(), cargs...)
11
22 import (
33 "github.com/gobuffalo/packr/v2/jam"
4 "github.com/pkg/errors"
54 "github.com/spf13/cobra"
65 )
76
1211 RunE: func(cmd *cobra.Command, args []string) error {
1312 cargs := parseArgs(args)
1413 if err := jam.Pack(globalOptions.PackOptions); err != nil {
15 return errors.WithStack(err)
14 return err
1615 }
1716 return goCmd("install", cargs...)
1817 },
2121 plog.Debug(p, "Resolve", "box", box, "path", path, "forward-box", p.ForwardBox, "forward-path", p.ForwardPath)
2222 b, err := findBox(p.ForwardBox)
2323 if err != nil {
24 return nil, errors.WithStack(err)
24 return nil, err
2525 }
2626 f, err := b.Resolve(p.ForwardPath)
2727 if err != nil {
77 "github.com/gobuffalo/packr/v2/file"
88 "github.com/gobuffalo/packr/v2/file/resolver"
99 "github.com/gobuffalo/packr/v2/plog"
10 "github.com/pkg/errors"
1110 )
1211
1312 // WalkFunc is used to walk a box
4645 return true
4746 })
4847 if err != nil {
49 return errors.WithStack(err)
48 return err
5049 }
5150
5251 var keys = make([]string, 0, len(m))
5958 osPath := resolver.OsPath(k)
6059 plog.Debug(b, "Walk", "path", k, "osPath", osPath)
6160 if err := wf(osPath, m[k]); err != nil {
62 return errors.WithStack(err)
61 return err
6362 }
6463 }
6564 return nil
7271 ipath := resolver.OsPath(path)
7372 if strings.HasPrefix(ipath, ipref) {
7473 if err := wf(path, f); err != nil {
75 return errors.WithStack(err)
74 return err
7675 }
7776 }
7877 return nil
55 "strings"
66
77 "github.com/gobuffalo/packd"
8 "github.com/pkg/errors"
98 )
109
1110 type WalkFunc = packd.WalkFunc
1514 if data[b.Path] == nil {
1615 base, err := filepath.EvalSymlinks(filepath.Join(b.callingDir, b.Path))
1716 if err != nil {
18 return errors.WithStack(err)
17 return err
1918 }
2019 return filepath.Walk(base, func(path string, info os.FileInfo, err error) error {
2120 cleanName, err := filepath.Rel(base, path)
5554 return b.Walk(func(path string, f File) error {
5655 if strings.HasPrefix(osPath(path), opre) {
5756 if err := wf(path, f); err != nil {
58 return errors.WithStack(err)
57 return err
5958 }
6059 }
6160 return nil