diff options
author | Joan Touzet <wohali@users.noreply.github.com> | 2020-01-14 05:29:15 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-01-14 05:29:15 +0000 |
commit | 660889db4be737e736706995e32e1cc224055ca9 (patch) | |
tree | f22c02b41bc416f8dd471ef6125f612ee23a2881 | |
parent | 3593b5ac8aaef11f50c45cd5238956ca48cc279d (diff) | |
download | couchdb-660889db4be737e736706995e32e1cc224055ca9.tar.gz |
Enable arm64v8 builds on Jenkins (#2436)
-rw-r--r-- | build-aux/Jenkinsfile.full | 57 |
1 files changed, 46 insertions, 11 deletions
diff --git a/build-aux/Jenkinsfile.full b/build-aux/Jenkinsfile.full index 2472d7827..c9327f800 100644 --- a/build-aux/Jenkinsfile.full +++ b/build-aux/Jenkinsfile.full @@ -467,22 +467,57 @@ pipeline { } // post } // stage + stage('Debian Buster arm64v8') { + agent { + docker { + image 'couchdbdev/arm64v8-debian-buster-erlang-20.3.8.24-1:latest' + label 'arm64v8' + alwaysPull true + args "${DOCKER_ARGS}" + } + } + environment { + platform = 'buster' + sm_ver = '60' + } + stages { + stage('Build from tarball & test') { + steps { + unstash 'tarball' + sh( script: build_and_test ) + } + post { + always { + junit '**/.eunit/*.xml, **/_build/*/lib/couchdbtest/*.xml, **/src/mango/nosetests.xml, **/test/javascript/junit.xml' + } + } + } + stage('Build CouchDB packages') { + steps { + sh( script: make_packages ) + sh( script: cleanup_and_save ) + } + post { + success { + archiveArtifacts artifacts: 'pkgs/**', fingerprint: true + } + } + } + } // stages + post { + cleanup { + sh 'rm -rf ${WORKSPACE}/*' + } + } // post + } // stage + + /* - * - * This is just taking too long to run. Right now, the khash tests are timing out - * on the IBM servers: - * - * [2019-12-31T20:58:48.704Z] khash randomized test - * [2019-12-31T20:59:04.869Z] khash_test:103: randomized_test_ (State matches dict implementation)...*timed out* - * - * So, this is DISABLED until we get an actual arm builder machine. - * - * ppc64le is actually slower to emulate than arm, so we're not even going to try that. + * Example of how to do a qemu-based run, please leave here */ /* stage('Debian Buster arm64v8') { - // once we have an arm64v8 node again, can restore this to original form that is less ugly // the process is convoluted to ensure we have the latest qemu static binaries on the node first // before trying to run a foreign docker container type. Alternately ensuring the `update_qemu` // container is run on every Jenkins agent *after every restart of the Docker daemon* would work. |