HBASE-20162 [nightly] depending on pipeline execution we sometimes refer to the wrong workspace
Signed-off-by: Mike Drob <mdrob@apache.org> Conflicts: dev-support/Jenkinsfile
This commit is contained in:
parent
eef6b36540
commit
55b3c0c21b
15
dev-support/Jenkinsfile
vendored
15
dev-support/Jenkinsfile
vendored
@ -30,9 +30,6 @@ pipeline {
|
|||||||
skipDefaultCheckout()
|
skipDefaultCheckout()
|
||||||
}
|
}
|
||||||
environment {
|
environment {
|
||||||
TOOLS = "${env.WORKSPACE}/tools"
|
|
||||||
// where we check out to across stages
|
|
||||||
BASEDIR = "${env.WORKSPACE}/component"
|
|
||||||
YETUS_RELEASE = '0.7.0'
|
YETUS_RELEASE = '0.7.0'
|
||||||
// where we'll write everything from different steps. Need a copy here so the final step can check for success/failure.
|
// where we'll write everything from different steps. Need a copy here so the final step can check for success/failure.
|
||||||
OUTPUT_DIR_RELATIVE_GENERAL = 'output-general'
|
OUTPUT_DIR_RELATIVE_GENERAL = 'output-general'
|
||||||
@ -42,6 +39,7 @@ pipeline {
|
|||||||
|
|
||||||
PROJECT = 'hbase'
|
PROJECT = 'hbase'
|
||||||
PROJECT_PERSONALITY = 'https://raw.githubusercontent.com/apache/hbase/master/dev-support/hbase-personality.sh'
|
PROJECT_PERSONALITY = 'https://raw.githubusercontent.com/apache/hbase/master/dev-support/hbase-personality.sh'
|
||||||
|
PERSONALITY_FILE = 'tools/personality.sh'
|
||||||
// This section of the docs tells folks not to use the javadoc tag. older branches have our old version of the check for said tag.
|
// This section of the docs tells folks not to use the javadoc tag. older branches have our old version of the check for said tag.
|
||||||
AUTHOR_IGNORE_LIST = 'src/main/asciidoc/_chapters/developer.adoc,dev-support/test-patch.sh'
|
AUTHOR_IGNORE_LIST = 'src/main/asciidoc/_chapters/developer.adoc,dev-support/test-patch.sh'
|
||||||
WHITESPACE_IGNORE_LIST = '.*/generated/.*'
|
WHITESPACE_IGNORE_LIST = '.*/generated/.*'
|
||||||
@ -49,7 +47,6 @@ pipeline {
|
|||||||
ARCHIVE_PATTERN_LIST = 'TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump'
|
ARCHIVE_PATTERN_LIST = 'TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump'
|
||||||
// These tests currently have known failures. Once they burn down to 0, remove from here so that new problems will cause a failure.
|
// These tests currently have known failures. Once they burn down to 0, remove from here so that new problems will cause a failure.
|
||||||
TESTS_FILTER = 'cc,checkstyle,javac,javadoc,pylint,shellcheck,whitespace,perlcritic,ruby-lint,rubocop,mvnsite,xml'
|
TESTS_FILTER = 'cc,checkstyle,javac,javadoc,pylint,shellcheck,whitespace,perlcritic,ruby-lint,rubocop,mvnsite,xml'
|
||||||
BRANCH_SPECIFIC_DOCKERFILE = "${env.BASEDIR}/dev-support/docker/Dockerfile"
|
|
||||||
// Flaky urls for different branches. Replace '-' and '.' in branch name by '_' because those
|
// Flaky urls for different branches. Replace '-' and '.' in branch name by '_' because those
|
||||||
// characters are not allowed in bash variable name.
|
// characters are not allowed in bash variable name.
|
||||||
// Not excluding flakies from the nightly build for now.
|
// Not excluding flakies from the nightly build for now.
|
||||||
@ -101,7 +98,8 @@ if [ ! -d "${YETUS_DIR}" ]; then
|
|||||||
gunzip -c yetus.tar.gz | tar xpf - -C "${YETUS_DIR}" --strip-components 1
|
gunzip -c yetus.tar.gz | tar xpf - -C "${YETUS_DIR}" --strip-components 1
|
||||||
fi
|
fi
|
||||||
'''
|
'''
|
||||||
dir ("${env.TOOLS}") {
|
// Set up the file we need at PERSONALITY_FILE location
|
||||||
|
dir ("tools") {
|
||||||
sh """#!/usr/bin/env bash
|
sh """#!/usr/bin/env bash
|
||||||
echo "Downloading Project personality."
|
echo "Downloading Project personality."
|
||||||
curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
||||||
@ -130,6 +128,7 @@ curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
environment {
|
environment {
|
||||||
|
BASEDIR = "${env.WORKSPACE}/component"
|
||||||
// TODO does hadoopcheck need to be jdk specific?
|
// TODO does hadoopcheck need to be jdk specific?
|
||||||
// Should be things that work with multijdk
|
// Should be things that work with multijdk
|
||||||
TESTS = 'all,-unit,-findbugs'
|
TESTS = 'all,-unit,-findbugs'
|
||||||
@ -191,6 +190,7 @@ curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
|||||||
branch 'branch-1*'
|
branch 'branch-1*'
|
||||||
}
|
}
|
||||||
environment {
|
environment {
|
||||||
|
BASEDIR = "${env.WORKSPACE}/component"
|
||||||
TESTS = 'mvninstall,compile,javac,unit,htmlout'
|
TESTS = 'mvninstall,compile,javac,unit,htmlout'
|
||||||
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_JDK7}"
|
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_JDK7}"
|
||||||
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_JDK7}"
|
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_JDK7}"
|
||||||
@ -259,6 +259,7 @@ curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
environment {
|
environment {
|
||||||
|
BASEDIR = "${env.WORKSPACE}/component"
|
||||||
TESTS = 'mvninstall,compile,javac,unit,findbugs,htmlout'
|
TESTS = 'mvninstall,compile,javac,unit,findbugs,htmlout'
|
||||||
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_HADOOP2}"
|
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_HADOOP2}"
|
||||||
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_HADOOP2}"
|
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_HADOOP2}"
|
||||||
@ -334,6 +335,7 @@ curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
environment {
|
environment {
|
||||||
|
BASEDIR = "${env.WORKSPACE}/component"
|
||||||
TESTS = 'mvninstall,compile,javac,unit,htmlout'
|
TESTS = 'mvninstall,compile,javac,unit,htmlout'
|
||||||
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_HADOOP3}"
|
OUTPUT_DIR_RELATIVE = "${env.OUTPUT_DIR_RELATIVE_HADOOP3}"
|
||||||
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_HADOOP3}"
|
OUTPUT_DIR = "${env.WORKSPACE}/${env.OUTPUT_DIR_RELATIVE_HADOOP3}"
|
||||||
@ -408,6 +410,9 @@ curl -L -o personality.sh "${env.PROJECT_PERSONALITY}"
|
|||||||
// this needs to be set to the jdk that ought to be used to build releases on the branch the Jenkinsfile is stored in.
|
// this needs to be set to the jdk that ought to be used to build releases on the branch the Jenkinsfile is stored in.
|
||||||
jdk "JDK 1.7 (latest)"
|
jdk "JDK 1.7 (latest)"
|
||||||
}
|
}
|
||||||
|
environment {
|
||||||
|
BASEDIR = "${env.WORKSPACE}/component"
|
||||||
|
}
|
||||||
steps {
|
steps {
|
||||||
sh '''#!/bin/bash -e
|
sh '''#!/bin/bash -e
|
||||||
echo "Setting up directories"
|
echo "Setting up directories"
|
||||||
|
@ -18,8 +18,8 @@
|
|||||||
|
|
||||||
declare -i missing_env=0
|
declare -i missing_env=0
|
||||||
# Validate params
|
# Validate params
|
||||||
for required_env in "TESTS" "TOOLS" "BASEDIR" "ARCHIVE_PATTERN_LIST" "OUTPUT_DIR_RELATIVE" \
|
for required_env in "TESTS" "PERSONALITY_FILE" "BASEDIR" "ARCHIVE_PATTERN_LIST" "OUTPUT_DIR_RELATIVE" \
|
||||||
"BRANCH_SPECIFIC_DOCKERFILE" "OUTPUT_DIR" "PROJECT" "AUTHOR_IGNORE_LIST" \
|
"OUTPUT_DIR" "PROJECT" "AUTHOR_IGNORE_LIST" \
|
||||||
"WHITESPACE_IGNORE_LIST" "BRANCH_NAME" "TESTS_FILTER" "DEBUG" \
|
"WHITESPACE_IGNORE_LIST" "BRANCH_NAME" "TESTS_FILTER" "DEBUG" \
|
||||||
"USE_YETUS_PRERELEASE" "WORKSPACE" "YETUS_RELEASE"; do
|
"USE_YETUS_PRERELEASE" "WORKSPACE" "YETUS_RELEASE"; do
|
||||||
if [ -z "${!required_env}" ]; then
|
if [ -z "${!required_env}" ]; then
|
||||||
@ -44,7 +44,7 @@ if [[ -n "${SET_JAVA_HOME}" ]]; then
|
|||||||
YETUS_ARGS=("--java-home=${SET_JAVA_HOME}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--java-home=${SET_JAVA_HOME}" "${YETUS_ARGS[@]}")
|
||||||
fi
|
fi
|
||||||
YETUS_ARGS=("--plugins=${TESTS}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--plugins=${TESTS}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--personality=${TOOLS}/personality.sh" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--personality=${PERSONALITY_FILE}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--basedir=${BASEDIR}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--basedir=${BASEDIR}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--archive-list=${ARCHIVE_PATTERN_LIST}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--archive-list=${ARCHIVE_PATTERN_LIST}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--console-urls" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--console-urls" "${YETUS_ARGS[@]}")
|
||||||
@ -52,7 +52,7 @@ YETUS_ARGS=("--console-urls" "${YETUS_ARGS[@]}")
|
|||||||
YETUS_ARGS=("--build-url-patchdir=artifact/${OUTPUT_DIR_RELATIVE}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--build-url-patchdir=artifact/${OUTPUT_DIR_RELATIVE}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--build-url-artifacts=artifact/${OUTPUT_DIR_RELATIVE}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--build-url-artifacts=artifact/${OUTPUT_DIR_RELATIVE}" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--docker" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--docker" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--dockerfile=${BRANCH_SPECIFIC_DOCKERFILE}" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--dockerfile=${BASEDIR}/dev-support/docker/Dockerfile" "${YETUS_ARGS[@]}")
|
||||||
# Yetus sets BUILDMODE env variable to "full" if this arg is passed.
|
# Yetus sets BUILDMODE env variable to "full" if this arg is passed.
|
||||||
YETUS_ARGS=("--empty-patch" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--empty-patch" "${YETUS_ARGS[@]}")
|
||||||
YETUS_ARGS=("--html-report-file=${OUTPUT_DIR}/console-report.html" "${YETUS_ARGS[@]}")
|
YETUS_ARGS=("--html-report-file=${OUTPUT_DIR}/console-report.html" "${YETUS_ARGS[@]}")
|
||||||
|
Loading…
x
Reference in New Issue
Block a user