]> git.ipfire.org Git - thirdparty/tor.git/commitdiff
Work around Travis CI ptrace regression
authorTaylor Yu <catalyst@torproject.org>
Wed, 10 Jan 2018 20:52:04 +0000 (14:52 -0600)
committerTaylor Yu <catalyst@torproject.org>
Wed, 17 Jan 2018 19:40:34 +0000 (13:40 -0600)
Travis CI deployed a change that disables ptrace capabilities in
container builds, which prevents LeakSanitizer on clang from working
properly.  Set "sudo: required" to force non-container builds for
clang and work around this.

.travis.yml

index 59b32dbe42b6fe8eb28f7f1a35741ad23278f255..60f82af3f92f343cfe12b0b921a9bf7351f4ed1f 100644 (file)
@@ -1,8 +1,10 @@
 language: c
 
-compiler:
-  - gcc
-  - clang
+## Comment out the compiler list for now to allow an explicit build
+## matrix.
+# compiler:
+#   - gcc
+#   - clang
 
 notifications:
   irc:
@@ -28,6 +30,10 @@ dist: trusty
 
 ## We don't need sudo. (The "apt:" stanza after this allows us to not need sudo;
 ## otherwise, we would need it for getting dependencies.)
+##
+## We override this in the explicit build matrix to work around a
+## Travis CI environment regression
+## https://github.com/travis-ci/travis-ci/issues/9033
 sudo: false
 
 ## (Linux only) Download our dependencies
@@ -61,6 +67,18 @@ matrix:
   ## entire job early and call the whole thing a failure.
   fast_finish: true
 
+  ## Create explicit matrix entries to work around a Travis CI
+  ## environment issue.  Missing keys inherit from the first list
+  ## entry under that key outside the "include" clause.
+  include:
+    - compiler: gcc
+    ## The "sudo: required" forces non-containerized builds, working
+    ## around a Travis CI environment issue: clang LeakAnalyzer fails
+    ## because it requires ptrace and the containerized environment no
+    ## longer allows ptrace.
+    - compiler: clang
+      sudo: required
+
 before_install:
   ## If we're on OSX, homebrew usually needs to updated first
   - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then brew update ; fi