Skip to content

Commit 454ce6a

Browse files
committed
Added error output and fixed some issues with how git was working
1 parent 63fa3cf commit 454ce6a

File tree

1 file changed

+32
-6
lines changed

1 file changed

+32
-6
lines changed

docker/gopath/src/xogeny/pubbook/pubbook.go

Lines changed: 32 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import "os"
44
import "fmt"
55
import "log"
66
import "path"
7+
import "bytes"
78
import "os/exec"
89

910
import hs "github.com/xogeny/go-hooksink"
@@ -12,13 +13,26 @@ type Builder struct {
1213
Debug bool
1314
}
1415

15-
func git(args...string) error {
16+
func git(dir string, args...string) error {
1617
log.Printf("Running %v...", args);
1718

19+
ebuf := []byte{};
20+
obuf := []byte{};
21+
22+
stderr := bytes.NewBuffer(ebuf);
23+
stdout := bytes.NewBuffer(obuf);
24+
1825
cmd := exec.Command("git", args...)
26+
cmd.Dir = dir;
27+
cmd.Stderr = stderr;
28+
cmd.Stdout = stdout;
1929
err := cmd.Run()
2030
if err != nil {
2131
log.Printf("Error: %s", err.Error());
32+
log.Print("=== Output ===");
33+
log.Print(stdout.String());
34+
log.Print("=== Error ===");
35+
log.Print(stderr.String());
2236
return err;
2337
} else {
2438
log.Printf("...successful");
@@ -27,12 +41,24 @@ func git(args...string) error {
2741
}
2842

2943
func make(dir string, targets...string) error {
44+
ebuf := []byte{};
45+
obuf := []byte{};
46+
47+
stderr := bytes.NewBuffer(ebuf);
48+
stdout := bytes.NewBuffer(obuf);
49+
3050
cmd := exec.Command("make", targets...);
51+
cmd.Stderr = stderr;
52+
cmd.Stdout = stdout;
3153
cmd.Dir = path.Join(dir, "text");
3254
log.Printf("Running initial make: %v...", targets);
3355
err := cmd.Run()
3456
if err != nil {
3557
log.Printf("Error running initial make '%v': %s", targets, err.Error());
58+
log.Print("=== Output ===");
59+
log.Print(stdout.String());
60+
log.Print("=== Error ===");
61+
log.Print(stderr.String());
3662
return err;
3763
} else {
3864
log.Printf("...successful");
@@ -56,27 +82,27 @@ func (b Builder) Push(msg hs.HubMessage) {
5682
// TODO: Have a query parameter to clear cache
5783

5884
if (exists) {
59-
err = git("fetch", "origin");
85+
err = git(dir, "fetch", "origin");
6086
if (err!=nil) { return; }
6187
} else {
62-
err = git("clone", url, dir);
88+
err = git(dir, "clone", url, dir);
6389
if (err!=nil) { return; }
6490
}
6591

6692
/* Repo checkout correct ref */
67-
err = git("checkout", ref)
93+
err = git(dir, "checkout", ref)
6894
if err != nil { return; }
6995

7096
bucket := fmt.Sprintf("S3BUCKET=dev.book.xogeny.com/%s", user);
7197
if (!exists) {
7298
// If it didn't already exist, we need to run some make targets
7399
/* Run make */
74-
make(dir, "specs", "results");
100+
make(dir, "specs");
75101
if (err!=nil) { return; }
76102
}
77103

78104
/* Run make */
79-
make(dir, target1, target2, bucket);
105+
make(dir, "results", target1, target2, bucket);
80106
if err != nil { return; }
81107

82108
log.Printf("Make ran!");

0 commit comments

Comments
 (0)