From: Andrew Grimberg Date: Mon, 11 Apr 2016 15:26:40 +0000 (+0000) Subject: Merge "Add odlsign-bulk script" X-Git-Tag: release/beryllium-sr2~60 X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=commitdiff_plain;h=7151b63f96733b70ff8c6cefe1425f7ecbe29dcd;hp=b3d57ed4f4108ad1aaf0e445fd045d58b743ee77;p=releng%2Fbuilder.git Merge "Add odlsign-bulk script" --- diff --git a/scripts/odlrelease b/scripts/odlrelease index 91e68e7c8..61526084e 100755 --- a/scripts/odlrelease +++ b/scripts/odlrelease @@ -37,7 +37,7 @@ function sign { echo "Fetching artifacts from $URL" # Fetch Artifacts wget --recursive --execute robots=off --no-parent --quiet \ - --no-host-directories --cut-dirs=2 \ + --no-host-directories --cut-dirs=3 \ $URL # Remove files that don't need signing diff --git a/scripts/odlsign-bulk b/scripts/odlsign-bulk new file mode 100755 index 000000000..6a9acf8d0 --- /dev/null +++ b/scripts/odlsign-bulk @@ -0,0 +1,67 @@ +#!/bin/bash + +# @License EPL-1.0 +############################################################################## +# Copyright (c) 2016 The Linux Foundation and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Eclipse Public License v1.0 +# which accompanies this distribution, and is available at +# http://www.eclipse.org/legal/epl-v10.html +############################################################################## + +function print_usage { + echo "Usage: $0 " + echo "" + echo " : The Nexus staging repo ID to sign." +} + +if [ -z "$1" ]; then + print_usage + exit 1 +fi + +SIGNREPO=$1 +SIGNATURES_DIR="gpg-signatures" +TMPFILE=/tmp/project-list.txt + +wget -q https://nexus.opendaylight.org/content/repositories/$SIGNREPO/org/opendaylight/ -O $TMPFILE +PROJECTS=`grep '/' $TMPFILE | sed -e 's#/.*##' -e 's#.*/">##'` +echo "Projects detected: $PROJECTS" + +# +# Prepare staging repo to upload signatures to +# + +if [ -d "$SIGNATURES_DIR" ]; then + echo "$SIGNATURES_DIR directory exists. Clearing..." + rm -rf $SIGNATURES_DIR +fi +mkdir $SIGNATURES_DIR + +mvn org.sonatype.plugins:nexus-staging-maven-plugin:1.6.7:deploy-staged-repository \ + -DskipStagingRepositoryClose=true \ + -DrepositoryDirectory="$SIGNATURES_DIR" \ + -DnexusUrl=https://nexus.opendaylight.org/ \ + -DstagingProfileId="425e43800fea70" \ + -DserverId="opendaylight.staging" | tee /tmp/deploy-staged-repository.log + +STAGED_REPO_ID=`grep 'Created staging repository with ID' /tmp/deploy-staged-repository.log | sed -e 's/.*ID "//' -e 's/".*//'` +echo "Staged Repo: $STAGED_REPO" + +# +# Finally retrieve and sign artifacts. +# + +for i in $PROJECTS +do + echo "Signing $i" + ./odlrelease sign http://nexus.opendaylight.org/content/repositories/$SIGNREPO/org/opendaylight/$i/ + mvn org.sonatype.plugins:nexus-staging-maven-plugin:1.6.7:deploy-staged-repository \ + -DskipStagingRepositoryClose=true \ + -DstagingRepositoryId=$STAGED_REPO_ID \ + -DrepositoryDirectory="$SIGNATURES_DIR" \ + -DnexusUrl=https://nexus.opendaylight.org/ \ + -DstagingProfileId="425e43800fea70" \ + -DserverId="opendaylight.staging" +done