Repository: cassandra-builds Updated Branches: refs/heads/master aecee8ef5 -> 6fd11d6e2
Make docker image for dtests configurable Also build against Java 11 if on trunk and Java 11 is available (Java 8 is still used for test execution) Project: http://git-wip-us.apache.org/repos/asf/cassandra-builds/repo Commit: http://git-wip-us.apache.org/repos/asf/cassandra-builds/commit/6fd11d6e Tree: http://git-wip-us.apache.org/repos/asf/cassandra-builds/tree/6fd11d6e Diff: http://git-wip-us.apache.org/repos/asf/cassandra-builds/diff/6fd11d6e Branch: refs/heads/master Commit: 6fd11d6e2f24cbd619fe229044f5e93626455413 Parents: aecee8e Author: Stefan Podkowinski <stefan.podkowin...@1und1.de> Authored: Mon Sep 17 15:22:57 2018 +0200 Committer: Stefan Podkowinski <s.podkowin...@gmail.com> Committed: Tue Sep 18 19:35:19 2018 +0200 ---------------------------------------------------------------------- build-scripts/cassandra-dtest-pytest.sh | 12 ++++++++++++ docker/jenkins/jenkinscommand.sh | 11 ++++++++--- jenkins-dsl/cassandra_job_dsl_seed.groovy | 9 +++++++-- 3 files changed, 27 insertions(+), 5 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cassandra-builds/blob/6fd11d6e/build-scripts/cassandra-dtest-pytest.sh ---------------------------------------------------------------------- diff --git a/build-scripts/cassandra-dtest-pytest.sh b/build-scripts/cassandra-dtest-pytest.sh index 7eae11e..9602cf9 100755 --- a/build-scripts/cassandra-dtest-pytest.sh +++ b/build-scripts/cassandra-dtest-pytest.sh @@ -21,6 +21,13 @@ export CASSANDRA_DIR=${WORKSPACE} #Have Cassandra skip all fsyncs to improve test performance and reliability export CASSANDRA_SKIP_SYNC=true +# set JAVA_HOME environment to enable multi-version jar files for >4.0 +# both JAVA8/11_HOME env variables must exist +grep -q _build_multi_java $CASSANDRA_DIR/build.xml +if [ $? -eq 0 -a -n "$JAVA8_HOME" -a -n "$JAVA11_HOME" ]; then + export JAVA_HOME="$JAVA11_HOME" +fi + # Loop to prevent failure due to maven-ant-tasks not downloading a jar.. for x in $(seq 1 3); do ant clean jar @@ -35,6 +42,11 @@ if [ "${RETURN}" -ne "0" ]; then exit ${RETURN} fi +# restore JAVA_HOME to Java 8 version we intent to run tests with +if [ -n "$JAVA8_HOME" ]; then + export JAVA_HOME="$JAVA8_HOME" +fi + # Set up venv with dtest dependencies set -e # enable immediate exit if venv setup fails virtualenv --python=python3 --no-site-packages venv http://git-wip-us.apache.org/repos/asf/cassandra-builds/blob/6fd11d6e/docker/jenkins/jenkinscommand.sh ---------------------------------------------------------------------- diff --git a/docker/jenkins/jenkinscommand.sh b/docker/jenkins/jenkinscommand.sh index 8a29dd7..e342ed4 100644 --- a/docker/jenkins/jenkinscommand.sh +++ b/docker/jenkins/jenkinscommand.sh @@ -1,15 +1,20 @@ #!/bin/sh -DOCKER_IMAGE="kjellman/cassandra-test:0.4.4" +if [ "$#" -lt 7 ]; then + echo "Usage: jenkinscommand.sh GITHUB_USER BRANCH DTEST_REPO_URL DTEST_BRANCH BUILDS_REPO_URL BUILDS_BRANCH DOCKER_IMAGE [target]" + exit 1 +fi BUILDSREPO=$5 BUILDSBRANCH=$6 +DOCKER_IMAGE=$7 +TARGET=$8 cat > env.list <<EOF REPO=$1 BRANCH=$2 DTEST_REPO=$3 DTEST_BRANCH=$4 EOF -echo "jenkinscommand.sh: running: git clone --branch $BUILDSBRANCH $BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $7" -ID=$(docker run --env-file env.list -dt $DOCKER_IMAGE dumb-init bash -ilc "git clone --branch $BUILDSBRANCH $BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $7") +echo "jenkinscommand.sh: running: git clone --branch $BUILDSBRANCH $BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $TARGET" +ID=$(docker run --env-file env.list -dt $DOCKER_IMAGE dumb-init bash -ilc "git clone --branch $BUILDSBRANCH $BUILDSREPO; sh ./cassandra-builds/docker/jenkins/dtest.sh $TARGET") # use docker attach instead of docker wait to get output docker attach --no-stdin $ID echo "$ID done, copying files" http://git-wip-us.apache.org/repos/asf/cassandra-builds/blob/6fd11d6e/jenkins-dsl/cassandra_job_dsl_seed.groovy ---------------------------------------------------------------------- diff --git a/jenkins-dsl/cassandra_job_dsl_seed.groovy b/jenkins-dsl/cassandra_job_dsl_seed.groovy index 3bda0dc..71a0d9d 100644 --- a/jenkins-dsl/cassandra_job_dsl_seed.groovy +++ b/jenkins-dsl/cassandra_job_dsl_seed.groovy @@ -50,6 +50,10 @@ def dtestTargets = ['dtest', 'dtest-novnode', 'dtest-offheap', 'dtest-large'] if(binding.hasVariable("CASSANDRA_DTEST_TEST_TARGETS")) { dtestTargets = "${CASSANDRA_DTEST_TEST_TARGETS}".split(",") } +def dtestDockerImage = 'kjellman/cassandra-test:0.4.4' +if(binding.hasVariable("CASSANDRA_DOCKER_IMAGE")) { + dtestDockerImage = "${CASSANDRA_DOCKER_IMAGE}" +} //////////////////////////////////////////////////////////// // @@ -344,7 +348,7 @@ cassandraBranches.each { scm(triggerInterval) } steps { - shell("sh ./cassandra-builds/docker/jenkins/jenkinscommand.sh apache ${branchName} https://github.com/apache/cassandra-dtest.git master ${buildsRepo} ${buildsBranch} ${targetName}") + shell("sh ./cassandra-builds/docker/jenkins/jenkinscommand.sh apache ${branchName} https://github.com/apache/cassandra-dtest.git master ${buildsRepo} ${buildsBranch} ${dtestDockerImage} ${targetName}") } } } @@ -446,6 +450,7 @@ job('Cassandra-devbranch-dtest') { stringParam('BRANCH', 'trunk', 'The branch of cassandra to checkout') stringParam('DTEST_REPO', "${dtestRepo}", 'The cassandra-dtest repo URL') stringParam('DTEST_BRANCH', 'master', 'The branch of cassandra-dtest to checkout') + stringParam('DOCKER_IMAGE', "${dtestDockerImage}", 'Docker image for running dtests') } scm { git { @@ -461,7 +466,7 @@ job('Cassandra-devbranch-dtest') { steps { buildDescription('', buildDescStr) shell("git clean -xdff ; git clone -b ${buildsBranch} ${buildsRepo}") - shell("sh ./cassandra-builds/docker/jenkins/jenkinscommand.sh \$REPO \$BRANCH \$DTEST_REPO \$DTEST_BRANCH ${buildsRepo} ${buildsBranch}") + shell("sh ./cassandra-builds/docker/jenkins/jenkinscommand.sh \$REPO \$BRANCH \$DTEST_REPO \$DTEST_BRANCH ${buildsRepo} ${buildsBranch} \$DOCKER_IMAGE") } publishers { archiveArtifacts('test_stdout.txt') --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org For additional commands, e-mail: commits-h...@cassandra.apache.org