[tor-commits] [tor-browser-bundle/master] Bug 20758: Make the gb build directory deterministic

gk at torproject.org gk at torproject.org
Tue Dec 6 21:41:51 UTC 2016


commit 27cf6fc8837ab98cb702d8c4db093e7b8f9d1c07
Author: Georg Koppen <gk at torproject.org>
Date:   Tue Dec 6 21:38:57 2016 +0000

    Bug 20758: Make the gb build directory deterministic
    
    The build directory `gb` uses is created with `ioutil.TempDir()` which
    results in a different one for every started build with high
    probability. We make it deterministic with this commit.
---
 gitian/descriptors/linux/gitian-sandbox.yml |  2 ++
 gitian/patches/gb-build-dir.patch           | 31 +++++++++++++++++++++++++++++
 gitian/versions.nightly                     |  4 ++--
 3 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/gitian/descriptors/linux/gitian-sandbox.yml b/gitian/descriptors/linux/gitian-sandbox.yml
index 0f4f78c..0c67126 100644
--- a/gitian/descriptors/linux/gitian-sandbox.yml
+++ b/gitian/descriptors/linux/gitian-sandbox.yml
@@ -29,6 +29,7 @@ files:
 - "go-linux32-utils.zip"
 - "go-linux64-utils.zip"
 - "dzip.sh"
+- "gb-build-dir.patch"
 script: |
   INSTDIR="$HOME/install"
   mkdir $INSTDIR/sandbox
@@ -59,6 +60,7 @@ script: |
 
   # Building gb
   cd gb
+  patch -p1 < ../gb-build-dir.patch
   find -type f -print0 | xargs -0 touch --date="$REFERENCE_DATETIME"
   mkdir -p "$GOPATH/src/github.com/constabulary/"
   ln -sf "$PWD" "$GOPATH/src/github.com/constabulary/gb"
diff --git a/gitian/patches/gb-build-dir.patch b/gitian/patches/gb-build-dir.patch
new file mode 100644
index 0000000..a52ca69
--- /dev/null
+++ b/gitian/patches/gb-build-dir.patch
@@ -0,0 +1,31 @@
+From a7b198e3a32509197150d7c2767262a7319ff339 Mon Sep 17 00:00:00 2001
+From: Georg Koppen <gk at torproject.org>
+Date: Tue, 6 Dec 2016 21:34:16 +0000
+Subject: [PATCH] Make the gb build directory deterministic
+
+
+diff --git a/context.go b/context.go
+index 53c00da..d040082 100644
+--- a/context.go
++++ b/context.go
+@@ -3,7 +3,6 @@ package gb
+ import (
+ 	"fmt"
+ 	"io"
+-	"io/ioutil"
+ 	"os"
+ 	"os/exec"
+ 	"path/filepath"
+@@ -136,7 +135,8 @@ func NewContext(p Project, opts ...func(*Context) error) (*Context, error) {
+ 		},
+ 		GcToolchain(),
+ 	}
+-	workdir, err := ioutil.TempDir("", "gb")
++	workdir := filepath.Join(os.TempDir(), "gb")
++	err := os.Mkdir(workdir, 0777)
+ 	if err != nil {
+ 		return nil, err
+ 	}
+-- 
+2.10.2
+
diff --git a/gitian/versions.nightly b/gitian/versions.nightly
index 304284d..2df094b 100755
--- a/gitian/versions.nightly
+++ b/gitian/versions.nightly
@@ -48,8 +48,8 @@ GO_X_CRYPTO_TAG=master
 GO_X_NET_TAG=master
 OBFS4_TAG=master
 NOTOFONTS_TAG=720e34851382ee3c1ef024d8dffb68ffbfb234c2
-ERRORS_TAG=master
-GB_TAG=master
+ERRORS_TAG=248dadf4e9068a0b3e79f02ed0a610d935de5302
+GB_TAG=06cc925cce6592e922dcc4839a8b44feb384e71e
 SANDBOX_TAG=master
 
 GITIAN_TAG=tor-browser-builder-4



More information about the tor-commits mailing list