aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--appveyor.yml11
-rw-r--r--build/ci.go2
-rw-r--r--internal/build/env.go5
-rw-r--r--internal/build/util.go7
4 files changed, 15 insertions, 10 deletions
diff --git a/appveyor.yml b/appveyor.yml
index 03ffdca9d..dbdda9b6c 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -22,19 +22,18 @@ environment:
install:
- rmdir C:\go /s /q
- - appveyor DownloadFile https://storage.googleapis.com/golang/go1.7.3.windows-amd64.zip
- - 7z x go1.7.3.windows-amd64.zip -y -oC:\ > NUL
+ - appveyor DownloadFile https://storage.googleapis.com/golang/go1.7.3.windows-%GETH_ARCH%.zip
+ - 7z x go1.7.3.windows-%GETH_ARCH%.zip -y -oC:\ > NUL
- go version
- gcc --version
build_script:
- - go run build\ci.go install -arch %GETH_ARCH%
+ - go run build\ci.go install
after_build:
- - go run build\ci.go archive -arch %GETH_ARCH% -type zip -signer WINDOWS_SIGNING_KEY -upload gethstore/builds
- - go run build\ci.go nsis -arch %GETH_ARCH% -signer WINDOWS_SIGNING_KEY -upload gethstore/builds
+ - go run build\ci.go archive -type zip -signer WINDOWS_SIGNING_KEY -upload gethstore/builds
+ - go run build\ci.go nsis -signer WINDOWS_SIGNING_KEY -upload gethstore/builds
test_script:
- - set GOARCH=%GETH_ARCH%
- set CGO_ENABLED=1
- go run build\ci.go test -vet -coverage
diff --git a/build/ci.go b/build/ci.go
index dbf188350..59f4acc02 100644
--- a/build/ci.go
+++ b/build/ci.go
@@ -459,7 +459,7 @@ func makeWorkdir(wdflag string) string {
}
func isUnstableBuild(env build.Environment) bool {
- if env.Branch != "master" && env.Tag != "" {
+ if env.Tag != "" {
return false
}
return true
diff --git a/internal/build/env.go b/internal/build/env.go
index cd3355092..95281df86 100644
--- a/internal/build/env.go
+++ b/internal/build/env.go
@@ -88,8 +88,9 @@ func LocalEnv() Environment {
env.Branch = b
}
}
- // Note that we don't get the current git tag. It would slow down
- // builds and isn't used by anything.
+ if env.Tag == "" {
+ env.Tag = RunGit("for-each-ref", "--points-at=HEAD", "--count=1", "--format=%(refname:short)", "refs/tags")
+ }
return env
}
diff --git a/internal/build/util.go b/internal/build/util.go
index c7e0614f2..1523a067b 100644
--- a/internal/build/util.go
+++ b/internal/build/util.go
@@ -76,6 +76,8 @@ func VERSION() string {
return string(bytes.TrimSpace(version))
}
+var warnedAboutGit bool
+
// RunGit runs a git subcommand and returns its output.
// The command must complete successfully.
func RunGit(args ...string) string {
@@ -83,7 +85,10 @@ func RunGit(args ...string) string {
var stdout, stderr bytes.Buffer
cmd.Stdout, cmd.Stderr = &stdout, &stderr
if err := cmd.Run(); err == exec.ErrNotFound {
- log.Println("no git in PATH")
+ if !warnedAboutGit {
+ log.Println("Warning: can't find 'git' in PATH")
+ warnedAboutGit = true
+ }
return ""
} else if err != nil {
log.Fatal(strings.Join(cmd.Args, " "), ": ", err, "\n", stderr.String())