aboutsummaryrefslogtreecommitdiff
path: root/misc/makerelease
diff options
context:
space:
mode:
authorAndrew Gerrand <adg@golang.org>2014-12-10 13:05:37 +1100
committerAndrew Gerrand <adg@golang.org>2014-12-10 02:08:38 +0000
commit508a22d5bcec2508779fbc4e3e4c745ffe8ea961 (patch)
treebe2567eaa67629ba7470b2dc4888f4e493e7077b /misc/makerelease
parent38ecd2e267ff90874d532b9ee6ca3a21bf9219bc (diff)
downloadgo-508a22d5bcec2508779fbc4e3e4c745ffe8ea961.tar.xz
misc/makerelease: use new storage api, handle git sub-repos
Change-Id: I8c5b77d861aafdc594714982503da7bee053c9fe Reviewed-on: https://go-review.googlesource.com/1291 Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Diffstat (limited to 'misc/makerelease')
-rw-r--r--misc/makerelease/makerelease.go14
1 files changed, 11 insertions, 3 deletions
diff --git a/misc/makerelease/makerelease.go b/misc/makerelease/makerelease.go
index 8cf6be2a43..43b1f3d115 100644
--- a/misc/makerelease/makerelease.go
+++ b/misc/makerelease/makerelease.go
@@ -14,6 +14,7 @@ import (
"compress/gzip"
"crypto/sha1"
"encoding/json"
+ "errors"
"flag"
"fmt"
"io"
@@ -30,7 +31,7 @@ import (
"strings"
"code.google.com/p/goauth2/oauth"
- storage "code.google.com/p/google-api-go-client/storage/v1beta2"
+ storage "code.google.com/p/google-api-go-client/storage/v1"
)
var (
@@ -512,8 +513,15 @@ func (b *Build) get(repoPath, revision string) error {
}
// Update the repo to the specified revision.
- p := filepath.Join(b.gopath, "src", filepath.FromSlash(repoPath))
- _, err = b.run(p, "hg", "update", revision)
+ dest := filepath.Join(b.gopath, "src", filepath.FromSlash(repoPath))
+ switch {
+ case exists(filepath.Join(dest, ".git")):
+ _, err = b.run(dest, "git", "checkout", revision)
+ case exists(filepath.Join(dest, ".hg")):
+ _, err = b.run(dest, "hg", "update", revision)
+ default:
+ err = errors.New("unknown version control system")
+ }
return err
}