refactor autorelease staging repo 03/48503/14
authorRavit Peretz <ravit.peretz@hpe.com>
Sun, 20 Nov 2016 10:10:06 +0000 (12:10 +0200)
committerRavit Peretz <ravit.peretz@hpe.com>
Mon, 12 Dec 2016 14:23:57 +0000 (16:23 +0200)
Change-Id: I1d0135275aeaf7f247eb4645b0560cd86a5c6108
Signed-off-by: Ravit Peretz <ravit.peretz@hpe.com>
jjb/autorelease/include-raw-autorelease-get-integration-test-variables.sh
jjb/autorelease/include-raw-autorelease-maven-deploy.sh

index 29b0cf5d7614a79761816fa7a4290904cbe43993..b50f56b20de4f8051dd25d5f00bc0b8cb933353d 100644 (file)
@@ -9,11 +9,20 @@
 # http://www.eclipse.org/legal/epl-v10.html
 ##############################################################################
 
-NEXUSURL=https://nexus.opendaylight.org/content/repositories/
+# ODLNEXUSPROXY is used to define the location of the Nexus server used by the CI system.
+# by default it should be set to https://nexus.opendaylight.org
+# in cases where an internal ci system is using multiple NEXUS systems one for artifacts and another for staging,
+# we can override using ODLNEXUS_STAGING_URL to route the staging build to the 2nd server.
+# (most CI setups where a single Nexus server is used, ODLNEXUS_STAGING_URL should be left unset)
+NEXUS_STAGING_URL=${ODLNEXUS_STAGING_URL:-$ODLNEXUSPROXY}
+
+NEXUSURL=${NEXUS_STAGING_URL}/content/repositories/
 VERSION=`grep -m2 '<version>' ${WORKSPACE}/integration/distribution/distribution-karaf/pom.xml | tail -n1 | awk -F'[<|>]' '/version/ { printf $3 }'`
 echo "VERSION: ${VERSION}"
-REPOID=`grep "Created staging repository with ID" $WORKSPACE/deploy-staged-repository.log | cut -d '"' -f2`
-echo BUNDLEURL=${NEXUSURL}/${REPOID}/org/opendaylight/integration/distribution-karaf/${VERSION}/distribution-karaf-${VERSION}.zip > $WORKSPACE/variables.prop
+STAGING_REPO_ID=`grep "Created staging repository with ID" $WORKSPACE/deploy-staged-repository.log | cut -d '"' -f2`
+BUNDLEURL=${NEXUSURL}/${STAGING_REPO_ID}/org/opendaylight/integration/distribution-karaf/${VERSION}/distribution-karaf-${VERSION}.zip
+echo STAGING_REPO_ID=$STAGING_REPO_ID >> $WORKSPACE/variables.prop
+echo BUNDLEURL=$BUNDLEURL >> $WORKSPACE/variables.prop
 echo "BUNDLEURL: ${BUNDLEURL}"
 
 # Copy variables.prop to variables.jenkins-trigger so that the end of build
index 630a2206c67e56fff3fa2725a72abd75a860d6fa..149d87ab676d7b2cc69266ac132bf1101cc2986a 100644 (file)
 cd hide/from/pom/files
 mkdir -p m2repo/org/opendaylight/
 
+# ODLNEXUSPROXY is used to define the location of the Nexus server used by the CI system.
+# by default it should be set to https://nexus.opendaylight.org
+# in cases where an internal ci system is using multiple NEXUS systems one for artifacts and another for staging,
+# we can override using ODLNEXUS_STAGING_URL to route the staging build to the 2nd server.
+# (most CI setups where a single Nexus server is used, ODLNEXUS_STAGING_URL should be left unset)
+NEXUS_STAGING_URL=${ODLNEXUS_STAGING_URL:-$ODLNEXUSPROXY}
+NEXUS_STAGING_PROFILE=${ODLNEXUS_STAGING_PROFILE:-425e43800fea70}
+NEXUS_STAGING_SERVER_ID=${ODLNEXUS_STAGING_SERVER_ID:-"opendaylight.staging"}
+
 rsync -avz --exclude 'maven-metadata*' \
            --exclude '_remote.repositories' \
            --exclude 'resolver-status.properties' \
@@ -20,8 +29,8 @@ rsync -avz --exclude 'maven-metadata*' \
 
 "$MVN" -V -B org.sonatype.plugins:nexus-staging-maven-plugin:1.6.2:deploy-staged-repository \
     -DrepositoryDirectory="`pwd`/m2repo" \
-    -DnexusUrl=https://nexus.opendaylight.org/ \
-    -DstagingProfileId="425e43800fea70" \
-    -DserverId="opendaylight.staging" \
+    -DnexusUrl=$NEXUS_STAGING_URL \
+    -DstagingProfileId="$NEXUS_STAGING_PROFILE" \
+    -DserverId="$NEXUS_STAGING_SERVER_ID" \
     -s $SETTINGS_FILE \
     -gs $GLOBAL_SETTINGS_FILE | tee $WORKSPACE/deploy-staged-repository.log