summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoan Touzet <wohali@users.noreply.github.com>2020-01-14 05:29:15 +0000
committerGitHub <noreply@github.com>2020-01-14 05:29:15 +0000
commit660889db4be737e736706995e32e1cc224055ca9 (patch)
treef22c02b41bc416f8dd471ef6125f612ee23a2881
parent3593b5ac8aaef11f50c45cd5238956ca48cc279d (diff)
downloadcouchdb-660889db4be737e736706995e32e1cc224055ca9.tar.gz
Enable arm64v8 builds on Jenkins (#2436)
-rw-r--r--build-aux/Jenkinsfile.full57
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.