cmd/release: build Windows MSI files
Change-Id: I4a5b1bd900f7d0eead67cb465573496dc2f397b9
Reviewed-on: https://go-review.googlesource.com/12283
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
diff --git a/cmd/release/release.go b/cmd/release/release.go
index 1c5b780..0772b86 100644
--- a/cmd/release/release.go
+++ b/cmd/release/release.go
@@ -204,12 +204,6 @@
return err
}
- // Write out version file.
- b.logf("Writing VERSION file.")
- if err := client.Put(strings.NewReader(*version), "go/VERSION", 0644); err != nil {
- return err
- }
-
// Push source to VM
b.logf("Pushing source to VM.")
const (
@@ -246,6 +240,12 @@
}
}
+ // Write out version file.
+ b.logf("Writing VERSION file.")
+ if err := client.Put(strings.NewReader(*version), "go/VERSION", 0644); err != nil {
+ return err
+ }
+
b.logf("Cleaning goroot (pre-build).")
if err := client.RemoveAll(addPrefix(goDir, preBuildCleanFiles)...); err != nil {
return err
@@ -341,6 +341,11 @@
return err
}
+ b.logf("Cleaning goroot (post-build).")
+ if err := client.RemoveAll(addPrefix(goDir, postBuildCleanFiles)...); err != nil {
+ return err
+ }
+
b.logf("Pushing and running releaselet.")
// TODO(adg): locate releaselet.go in GOPATH
const releaselet = "releaselet.go"
@@ -357,7 +362,7 @@
return err
}
- cleanFiles := append(addPrefix(goDir, postBuildCleanFiles), goPath, releaselet, go14)
+ cleanFiles := []string{goPath, releaselet, go14}
switch b.OS {
case "darwin":
@@ -367,19 +372,16 @@
}
cleanFiles = append(cleanFiles, "pkg")
case "windows":
- if false { // TODO(adg): implement this
- filename := *version + "." + b.String() + ".msi"
- if err := b.fetchFile(client, filename, "msi"); err != nil {
- return err
- }
- cleanFiles = append(cleanFiles, "msi")
+ filename := *version + "." + b.String() + ".msi"
+ if err := b.fetchFile(client, filename, "msi"); err != nil {
+ return err
}
+ cleanFiles = append(cleanFiles, "msi")
}
- b.logf("Cleaning goroot (post-build).")
-
// Need to delete everything except the final "go" directory,
// as we make the tarball relative to workdir.
+ b.logf("Cleaning workdir.")
if err := client.RemoveAll(cleanFiles...); err != nil {
return err
}