Commit 3338af7c by Tianqi Chen Committed by ziheng

[CI] Add more info, per exec ws isolation (#4388)

parent 6040b6f9
...@@ -64,10 +64,16 @@ docker_run = 'docker/bash.sh' ...@@ -64,10 +64,16 @@ docker_run = 'docker/bash.sh'
// timeout in minutes // timeout in minutes
max_time = 120 max_time = 120
workspace = "workspace/exec_${env.EXECUTOR_NUMBER}" def per_exec_ws(folder) {
return "workspace/exec_${env.EXECUTOR_NUMBER}/" + folder
}
// initialize source codes // initialize source codes
def init_git() { def init_git() {
// Add more info about job node
sh """
echo "INFO: NODE_NAME=${NODE_NAME} EXECUTOR_NUMBER=${EXECUTOR_NUMBER}"
"""
checkout scm checkout scm
retry(5) { retry(5) {
timeout(time: 2, unit: 'MINUTES') { timeout(time: 2, unit: 'MINUTES') {
...@@ -88,7 +94,7 @@ def init_git_win() { ...@@ -88,7 +94,7 @@ def init_git_win() {
stage("Sanity Check") { stage("Sanity Check") {
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
node('CPU') { node('CPU') {
ws("${workspace}/tvm/sanity") { ws(per_exec_ws("tvm/sanity")) {
init_git() init_git()
sh "${docker_run} ${ci_lint} ./tests/scripts/task_lint.sh" sh "${docker_run} ${ci_lint} ./tests/scripts/task_lint.sh"
} }
...@@ -136,7 +142,7 @@ def unpack_lib(name, libs) { ...@@ -136,7 +142,7 @@ def unpack_lib(name, libs) {
stage('Build') { stage('Build') {
parallel 'BUILD: GPU': { parallel 'BUILD: GPU': {
node('GPUBUILD') { node('GPUBUILD') {
ws("${workspace}/tvm/build-gpu") { ws(per_exec_ws("tvm/build-gpu")) {
init_git() init_git()
sh """ sh """
mkdir -p build mkdir -p build
...@@ -184,7 +190,7 @@ stage('Build') { ...@@ -184,7 +190,7 @@ stage('Build') {
}, },
'BUILD: CPU': { 'BUILD: CPU': {
node('CPU') { node('CPU') {
ws("${workspace}/tvm/build-cpu") { ws(per_exec_ws("tvm/build-cpu")) {
init_git() init_git()
sh """ sh """
mkdir -p build mkdir -p build
...@@ -216,7 +222,7 @@ stage('Build') { ...@@ -216,7 +222,7 @@ stage('Build') {
}, },
'BUILD : i386': { 'BUILD : i386': {
node('CPU') { node('CPU') {
ws("${workspace}/tvm/build-i386") { ws(per_exec_ws("tvm/build-i386")) {
init_git() init_git()
sh """ sh """
mkdir -p build mkdir -p build
...@@ -241,7 +247,7 @@ stage('Build') { ...@@ -241,7 +247,7 @@ stage('Build') {
stage('Unit Test') { stage('Unit Test') {
parallel 'python3: GPU': { parallel 'python3: GPU': {
node('TensorCore') { node('TensorCore') {
ws("${workspace}/tvm/ut-python-gpu") { ws(per_exec_ws("tvm/ut-python-gpu")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -253,7 +259,7 @@ stage('Unit Test') { ...@@ -253,7 +259,7 @@ stage('Unit Test') {
}, },
'python3: i386': { 'python3: i386': {
node('CPU') { node('CPU') {
ws("${workspace}/tvm/ut-python-i386") { ws(per_exec_ws("tvm/ut-python-i386")) {
init_git() init_git()
unpack_lib('i386', tvm_multilib) unpack_lib('i386', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -266,7 +272,7 @@ stage('Unit Test') { ...@@ -266,7 +272,7 @@ stage('Unit Test') {
}, },
'java: GPU': { 'java: GPU': {
node('GPU') { node('GPU') {
ws("${workspace}/tvm/ut-java") { ws(per_exec_ws("tvm/ut-java")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -280,7 +286,7 @@ stage('Unit Test') { ...@@ -280,7 +286,7 @@ stage('Unit Test') {
stage('Integration Test') { stage('Integration Test') {
parallel 'topi: GPU': { parallel 'topi: GPU': {
node('GPU') { node('GPU') {
ws("${workspace}/tvm/topi-python-gpu") { ws(per_exec_ws("tvm/topi-python-gpu")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -291,7 +297,7 @@ stage('Integration Test') { ...@@ -291,7 +297,7 @@ stage('Integration Test') {
}, },
'frontend: GPU': { 'frontend: GPU': {
node('GPU') { node('GPU') {
ws("${workspace}/tvm/frontend-python-gpu") { ws(per_exec_ws("tvm/frontend-python-gpu")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -302,7 +308,7 @@ stage('Integration Test') { ...@@ -302,7 +308,7 @@ stage('Integration Test') {
}, },
'legacy: GPU': { 'legacy: GPU': {
node('GPU') { node('GPU') {
ws("${workspace}/tvm/legacy-python-gpu") { ws(per_exec_ws("tvm/legacy-python-gpu")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -313,7 +319,7 @@ stage('Integration Test') { ...@@ -313,7 +319,7 @@ stage('Integration Test') {
}, },
'docs: GPU': { 'docs: GPU': {
node('GPU') { node('GPU') {
ws("${workspace}/tvm/docs-python-gpu") { ws(per_exec_ws("tvm/docs-python-gpu")) {
init_git() init_git()
unpack_lib('gpu', tvm_multilib) unpack_lib('gpu', tvm_multilib)
timeout(time: max_time, unit: 'MINUTES') { timeout(time: max_time, unit: 'MINUTES') {
...@@ -345,7 +351,7 @@ stage('Build packages') { ...@@ -345,7 +351,7 @@ stage('Build packages') {
stage('Deploy') { stage('Deploy') {
node('doc') { node('doc') {
ws("${workspace}/tvm/deploy-docs") { ws(per_exec_ws("tvm/deploy-docs")) {
if (env.BRANCH_NAME == "master") { if (env.BRANCH_NAME == "master") {
unpack_lib('mydocs', 'docs.tgz') unpack_lib('mydocs', 'docs.tgz')
sh "tar xf docs.tgz -C /var/docs" sh "tar xf docs.tgz -C /var/docs"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment