X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=ci-management.git;a=blobdiff_plain;f=jjb%2Fshell%2Fta-rpm-deploy.sh;h=719ec5dc2f18f88332092e0aedfefa6e59f3d8a3;hp=eeb1af6f8192b21cb641d4b9771720cc5b7df347;hb=0904fdd5e0e3b113ee90e77c646a7f156d878762;hpb=0acd1ca3066cc1a56199cd25174ae6972a75411b diff --git a/jjb/shell/ta-rpm-deploy.sh b/jjb/shell/ta-rpm-deploy.sh index eeb1af6..719ec5d 100644 --- a/jjb/shell/ta-rpm-deploy.sh +++ b/jjb/shell/ta-rpm-deploy.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -l # SPDX-License-Identifier: EPL-1.0 ############################################################################## # Copyright (c) 2017 The Linux Foundation and others. @@ -16,45 +16,55 @@ set -eu -o pipefail set -x # Trace commands for this script to make debugging easier. +set +f # Ensure filename expansion (globbing) is enabled + NEXUS_REPO=rpm.snapshots release_path=TA/release-1 repo_dir="$WORKSPACE/work/nexus/$NEXUS_REPO" -x86_dir="$repo_dir/$release_path/rpms/x86_64" +arch_dir="$repo_dir/$release_path/rpms/$(uname -m)" sources_dir="$repo_dir/$release_path/rpms/Sources" -nexus_repo_url="$ALT_NEXUS_URL/repository/$NEXUS_REPO" +nexus_repo_url="$RPM_REPO_URL/repository/$NEXUS_REPO" results_dir="$WORKSPACE/work/results" repo_name=`echo $WORKSPACE | awk -F '/' '{print $4}' | cut -d '-' -f2- | sed 's|\(.*\)-.*|\1|'` -#Creating dir to move duplicate RPMs/SRPMs to avoid re-upload +#Creating dirs to move duplicate RPMs/SRPMs to avoid re-upload and copy the changed RPMs/SRPMs +rm -rf "$results_dir/repo/duplicates" "$results_dir/src_repo/duplicates" mkdir "$results_dir/repo/duplicates" mkdir "$results_dir/src_repo/duplicates" +mkdir -p "$arch_dir" +mkdir -p "$sources_dir" -#List all RPMs available in Nexus and move the duplicates +#List all RPMs available in Nexus, move the duplicates and copy the changed ones for artifact in \ - `ls $results_dir/repo` + `ls $results_dir/repo/*.rpm` do - if curl --head --fail $nexus_repo_url/$release_path/rpms/x86_64/$artifact + if curl -L --head --fail $nexus_repo_url/$release_path/rpms/$(uname -m)/$(basename $artifact) then - mv $results_dir/repo/$artifact $results_dir/repo/duplicates/ + echo "RPM - $(basename $artifact) already available in Nexus" + mv $results_dir/repo/$(basename $artifact) $results_dir/repo/duplicates/ + else + echo "RPM - $(basename $artifact) is not available in Nexus. Will be uploaded" + cp $results_dir/repo/$(basename $artifact) $arch_dir fi done -#List all SRPMs available in Nexus and move the duplicates +#List all Source RPMs available in Nexus, move the duplicates and copy the changed ones for artifact in \ - `ls $results_dir/src_repo` + `ls $results_dir/src_repo/*.rpm` do - if curl --head --fail $nexus_repo_url/$release_path/rpms/Sources/$artifact + if curl -L --head --fail $nexus_repo_url/$release_path/rpms/Sources/$(basename $artifact) then - mv $results_dir/src_repo/$artifact $results_dir/src_repo/duplicates/ + echo "Source RPM - $(basename $artifact) already available in Nexus" + mv $results_dir/src_repo/$(basename $artifact) $results_dir/src_repo/duplicates/ + else + echo "Source RPM - $(basename $artifact) is not available in Nexus. Will be uploaded" + cp $results_dir/src_repo/$(basename $artifact) $sources_dir fi done -mkdir -p "$x86_dir" -mkdir -p "$sources_dir" - -cp "$results_dir/repo/"*.rpm "$x86_dir" -cp "$results_dir/src_repo/"*.rpm "$sources_dir" +echo "-----> Sign all artifacts" +lftools sign sigul "$repo_dir" echo "-----> Upload RPMs to Nexus" lftools deploy nexus "$nexus_repo_url" "$repo_dir"