CIMANAGE-22: do not overwrite vpp_dependencies for stable branches 68/10668/4
authorMarek Gradzki <mgradzki@cisco.com>
Tue, 20 Feb 2018 07:09:06 +0000 (08:09 +0100)
committerMarek Gradzki <mgradzki@cisco.com>
Wed, 21 Feb 2018 15:02:38 +0000 (15:02 +0000)
In order to have control of package dependencies in the release artifacts,
the vpp_dependencies file should not be modified in case of stable branch.

Modification for master branch helps to eliminate Java API mismatches,
but in case of stable branch VPP API changes occur very rarely.

Change-Id: I39338273504f9b0b6e0e063b55f3339f546eb2ef
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh

index 042e0bf..bdc475d 100644 (file)
@@ -1,25 +1,39 @@
 #!/bin/bash
 set -x
 
-# determine VPP Java API version used in maven build
-if [ "${OS}" == "centos7" ]; then
-    VERSION=`yum list installed vpp-api-java | grep vpp-api-java | awk '{ printf $2; }'`
-    # write a file that will echo VPP dependencies
-    echo -n 'echo' > vpp_dependencies
-    echo " \"vpp = ${VERSION}, vpp-plugins = ${VERSION}\"" >> vpp_dependencies
-    chmod +x vpp_dependencies
-    # overwrite default dependencies file
-    mv vpp_dependencies packaging/rpm/
-else
-    VERSION=`apt list --installed | grep vpp-api-java | awk '{ printf $2; }'`
-    # write a file that will echo VPP dependencies
-    echo -n 'echo' > vpp_dependencies
-    echo " \"vpp (= ${VERSION}), vpp-plugins (= ${VERSION})\"" >> vpp_dependencies
-    chmod +x vpp_dependencies
-    # overwrite default dependencies file
-    mv vpp_dependencies packaging/deb/common/
+# In case of master branch, update vpp_dependencies file
+# to match vpp-api-java and eliminate Java API mismatches (HC2VPP-102).
+#
+# In order to have control of package dependencies in the release artifacts (HC2VPP-282),
+# the vpp_dependencies file is not modified in case of stable branch
+# (after VPP API freeze, Java API mismatches occur very rarely).
+if [ "${STREAM}" == "master" ]; then
+    if [ "${OS}" == "centos7" ]; then
+        # Determine VPP Java API version used in maven build
+        VERSION=`yum list installed vpp-api-java | grep vpp-api-java | awk '{ printf $2; }'`
+
+        # Write a file that will echo VPP dependencies
+        echo -n 'echo' > vpp_dependencies
+        echo " \"vpp = ${VERSION}, vpp-plugins = ${VERSION}\"" >> vpp_dependencies
+        chmod +x vpp_dependencies
+
+        # Overwrite default dependencies file
+        mv vpp_dependencies packaging/rpm/
+    else
+        # Determine VPP Java API version used in maven build
+        VERSION=`apt list --installed | grep vpp-api-java | awk '{ printf $2; }'`
+
+        # Write a file that will echo VPP dependencies
+        echo -n 'echo' > vpp_dependencies
+        echo " \"vpp (= ${VERSION}), vpp-plugins (= ${VERSION})\"" >> vpp_dependencies
+        chmod +x vpp_dependencies
+
+        # Overwrite default dependencies file
+        mv vpp_dependencies packaging/deb/common/
+    fi
 fi
 
+# Build package
 if [ "${OS}" == "centos7" ]; then
 
     # Build the rpms
@@ -29,7 +43,8 @@ if [ "${OS}" == "centos7" ]; then
     RPMS=$(find . -type f -iname '*.rpm')
     SRPMS=$(find . -type f -iname '*.srpm')
     SRCRPMS=$(find . -type f -name '*.src.rpm')
-    # publish hc2vpp packages
+
+    # Publish hc2vpp packages
     for i in $RPMS $SRPMS $SRCRPMS
     do
         push_rpm "$i"
@@ -41,7 +56,8 @@ elif [ "${OS}" == "ubuntu1604" ]; then
 
     # Find the files
     DEBS=$(find . -type f -iname '*.deb')
-    # publish hc2vpp packages
+
+    # Publish hc2vpp packages
     for i in $DEBS
     do
         push_deb "$i"