From 40b4a457706756f9c518c62075afd46451b87aa5 Mon Sep 17 00:00:00 2001 From: Hyunsu Cho Date: Tue, 14 Apr 2020 14:03:14 -0700 Subject: [PATCH] [CI] Deploy SNAPSHOT JARs to S3 bucket --- Jenkinsfile | 26 +++++++++++++++++++++++ jvm-packages/pom.xml | 30 +++++++++++++++++++++++++++ tests/ci_build/deploy_jvm_packages.sh | 25 ++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100755 tests/ci_build/deploy_jvm_packages.sh diff --git a/Jenkinsfile b/Jenkinsfile index 1128f7dfe..7930ef366 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -95,6 +95,17 @@ pipeline { milestone ordinal: 4 } } + stage('Jenkins Linux: Deploy') { + agent none + steps { + script { + parallel ([ + 'deploy-jvm-packages': { DeployJVMPackages(spark_version: '2.4.3') } + ]) + } + milestone ordinal: 5 + } + } } } @@ -380,3 +391,18 @@ def TestR(args) { deleteDir() } } + +def DeployJVMPackages(args) { + node('linux && cpu') { + unstash name: 'srcs' + if (env.BRANCH_NAME == 'master' || env.BRANCH_NAME.startsWith('release')) { + echo 'Deploying to xgboost-maven-repo S3 repo...' + def container_type = "jvm" + def docker_binary = "docker" + sh """ + ${dockerRun} ${container_type} ${docker_binary} tests/ci_build/deploy_jvm_packages.sh ${args.spark_version} + """ + } + deleteDir() + } +} diff --git a/jvm-packages/pom.xml b/jvm-packages/pom.xml index 11cce7276..6b31f5c17 100644 --- a/jvm-packages/pom.xml +++ b/jvm-packages/pom.xml @@ -205,6 +205,29 @@ + + release-to-s3 + + + maven-s3-snapshot-repo + s3://xgboost-maven-repo/snapshot + + + maven-s3-release-repo + s3://xgboost-maven-repo/release + + + + + maven-s3-snapshot-repo + https://s3.amazonaws.com/xgboost-maven-repo/snapshot + + + maven-s3-release-repo + https://s3.amazonaws.com/xgboost-maven-repo/release + + + @@ -324,6 +347,13 @@ + + + org.kuali.maven.wagons + maven-s3-wagon + 1.2.1 + + diff --git a/tests/ci_build/deploy_jvm_packages.sh b/tests/ci_build/deploy_jvm_packages.sh new file mode 100755 index 000000000..cd74da370 --- /dev/null +++ b/tests/ci_build/deploy_jvm_packages.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +set -e +set -x + +if [ $# -ne 1 ]; then + echo "Usage: $0 [spark version]" + exit 1 +fi + +spark_version=$1 + +# Initialize local Maven repository +./tests/ci_build/initialize_maven.sh + +rm -rf build/ +cd jvm-packages +# re-build package without Mock Rabit +mvn --no-transfer-progress package -Dspark.version=${spark_version} -DskipTests + +# deploy to S3 bucket xgboost-maven-repo +mvn --no-transfer-progress deploy -P release-to-s3 -DskipTests + +set +x +set +e