X-Git-Url: https://gerrit.akraino.org/r/gitweb?p=ci-management.git;a=blobdiff_plain;f=jjb%2Fshell%2Fta-rpm-deploy.sh;h=da977c7c6418bcb831c69386b19d2c701bf49b2b;hp=36c7c5b4710b26de58095997568715bc88d0d4b2;hb=7575d2a1bd2d3d9af3d23b20432cc3fe8f100a01;hpb=b2d363e0cde9fcc4912ae3e7e09cf273dcb24f18 diff --git a/jjb/shell/ta-rpm-deploy.sh b/jjb/shell/ta-rpm-deploy.sh index 36c7c5b..da977c7 100644 --- a/jjb/shell/ta-rpm-deploy.sh +++ b/jjb/shell/ta-rpm-deploy.sh @@ -20,15 +20,46 @@ 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|'` -mkdir -p "$x86_dir" +#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" -cp "$WORKSPACE/work/results/repo/"*.rpm "$x86_dir" -cp "$WORKSPACE/work/results/src_repo/"*.rpm "$sources_dir" +#List all RPMs available in Nexus, move the duplicates and copy the changed ones +for artifact in \ + `ls $results_dir/repo/*.rpm` + do + if curl --head --fail $nexus_repo_url/$release_path/rpms/$(uname -m)/$(basename $artifact) + then + 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 Source RPMs available in Nexus, move the duplicates and copy the changed ones +for artifact in \ + `ls $results_dir/src_repo/*.rpm` + do + if curl --head --fail $nexus_repo_url/$release_path/rpms/Sources/$(basename $artifact) + then + 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 echo "-----> Upload RPMs to Nexus" lftools deploy nexus "$nexus_repo_url" "$repo_dir"