Find major version from stream, avoid mismatches 87/62487/1
authorDaniel Farrell <dfarrell@redhat.com>
Thu, 31 Aug 2017 10:57:16 +0000 (06:57 -0400)
committerDaniel Farrell <dfarrell@redhat.com>
Thu, 31 Aug 2017 10:57:16 +0000 (06:57 -0400)
With the current build-snap jobs, it's possible to pass a major version
that doesn't match the stream. This results in building an RPM from the
given major version but pushing it to the Nexus repo for the stream.

Don't accept version params and always derive them from job stream.

Change-Id: I471c7e5e8aca09a45859d88abb4200b6a825ca64
Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
jjb/packaging/build-rpm-snap.sh
jjb/packaging/packaging.yaml

index 9ff3b41f7e7d6ea76d28767c796f484644e78e92..cd559d4622f3006b7e838b2760dfb1bd7a1ce398 100644 (file)
@@ -14,12 +14,29 @@ PYTHON="rpm_build/bin/python"
 $PYTHON -m pip install --upgrade pip
 $PYTHON -m pip install -r "$WORKSPACE/packaging/packages/requirements.txt"
 
+# Extract stream from job name (format: foo-job-name-<stream>)
+# shellcheck disable=SC1083
+STREAM=${{JOB_NAME##*-}}
+
+# Convert stream to numeric ODL major version
+if [ "$STREAM" == "boron" ]; then
+  VERSION_MAJOR=5
+elif [ "$STREAM" == "carbon" ]; then
+  VERSION_MAJOR=6
+elif [ "$STREAM" == "nitrogen" ]; then
+  VERSION_MAJOR=7
+elif [ "$STREAM" == "oxygen" ]; then
+  VERSION_MAJOR=8
+else
+  echo "Unable to convert stream to major version"
+  exit 1
+fi
+
 # Build the latest snapshot matching the given major minor version
 "$WORKSPACE/packaging/packages/build.py" --rpm --build-latest-snap \
-                                  --major "$VERSION_MAJOR" \
-                                  --minor "$VERSION_MINOR" \
-                                  --changelog_name "$CHANGELOG_NAME" \
-                                  --changelog_email "$CHANGELOG_EMAIL"
+                                         --major "$VERSION_MAJOR" \
+                                         --changelog_name "$CHANGELOG_NAME" \
+                                         --changelog_email "$CHANGELOG_EMAIL"
 
 # Copy the rpm to be upload
 UPLOAD_FILES_PATH="$WORKSPACE/upload_files"
index d8f59253445cf9134b2105eae9e6d323288d2384..83624f1fb27f32db8e605a5b7318d0e54b5ffbb6 100644 (file)
           mvn-params: '{mvn-params}'
           mvn-version: '{mvn-version}'
           staging-profile-id: ''
-      - string:
-          name: VERSION_MAJOR
-          default: '7'
-          description: 'OpenDaylight major (element) version number to build'
-      - string:
-          name: VERSION_MINOR
-          default: '0'
-          description: 'OpenDaylight minor (SR) version number to build'
       - string:
           name: CHANGELOG_NAME
           default: 'Jenkins'