X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=shell%2Fdeploy-maven-file.sh;h=a057fe1958026b19858016cc4f3f347d78c83916;hb=4867c0799530acf13f7527c6a026879bdfb34e06;hp=8b6fad8eb2ab19bc1005188e4716792e6658f174;hpb=799b9c72a23db2d8a60e80988096db7224815e16;p=releng%2Fglobal-jjb.git diff --git a/shell/deploy-maven-file.sh b/shell/deploy-maven-file.sh index 8b6fad8e..a057fe19 100644 --- a/shell/deploy-maven-file.sh +++ b/shell/deploy-maven-file.sh @@ -1,5 +1,5 @@ -#!/bin/bash -# @License EPL-1.0 +#!/bin/bash -l +# SPDX-License-Identifier: EPL-1.0 ############################################################################## # Copyright (c) 2017 The Linux Foundation and others. # @@ -12,24 +12,44 @@ # This script publishes packages (rpms/debs) or any file to Nexus hosted # maven2 repository. # -# $NEXUS_URL : Jenkins global variable should be defined. +# $MAVEN_REPO_URL : Provided by a job parameter. +# The calling job can set $NEXUS_URL path or local +# directory to stage files. ex: +# -Durl="${NEXUS_URL}/content/repositories/$REPO_ID" +# -Durl="file://$WORKSPACE/m2repo" # $REPO_ID : Provided by a job parameter. +# A repository ID represents the repository. # $GROUP_ID : Provided by a job parameter. -# $UPLOAD_FILES_PATH : Provided by a job parameter. +# A group ID represents a nexus group. +# $UPLOAD_FILES_PATH : Provided by a job parameter. +# The directory contains one or more artifacts. + echo "---> deploy-maven-file.sh" + +# DO NOT enable -u because $MAVEN_PARAMS and $MAVEN_OPTIONS could be unbound. # Ensure we fail the job if any steps fail. -set -eu -o pipefail +set -e -o pipefail +set +u + +# shellcheck disable=SC1090 +. ~/lf-env.sh + +lf-activate-venv --python python3 lftools + +export MAVEN_OPTIONS +export MAVEN_PARAMS DEPLOY_LOG="$WORKSPACE/archives/deploy-maven-file.log" mkdir -p "$WORKSPACE/archives" -NEXUS_REPO_URL="${NEXUS_URL}/content/repositories/$REPO_ID" - -while IFS="" read -r file -do - lftools deploy maven-file "$NEXUS_REPO_URL" \ - "$REPO_ID" \ - "$file" \ - -b "$MVN" \ - -g "$GROUP_ID" | tee "$DEPLOY_LOG" -done < <(find "$UPLOAD_FILES_PATH" -type f -name "*") +while IFS="" read -r file; do + file_size=$(stat --printf="%s" "${file}") + echo "Deploy ${file##*/} with ${file_size} bytes." + lftools deploy maven-file "$MAVEN_REPO_URL" \ + "$REPO_ID" \ + "$file" \ + -b "$MVN" \ + -g "$GROUP_ID" \ + -p "$MAVEN_OPTIONS $MAVEN_PARAMS" \ + |& tee "$DEPLOY_LOG" +done < <(find "$UPLOAD_FILES_PATH" -xtype f -name "*")