-# 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
+ JVPP_VERSION=`yum list installed vpp-api-java | grep vpp-api-java | awk '{ printf $2; }'`
+ VERSION=`yum deplist vpp-api-java |grep vpp-lib |head -1 | awk '{ print $3}'`
+
+ # Write a file that will echo VPP dependencies
+ echo -n 'echo' > vpp_dependencies
+ echo " \"vpp = ${VERSION}, vpp-plugins = ${VERSION}, vpp-api-java = ${JVPP_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
+ JVPP_VERSION=`apt list --installed | grep vpp-api-java | awk '{ printf $2; }'`
+ # get vpp-api-java package dependencies
+ JVPP_DEPS=`apt-cache show vpp-api-java=${JVPP_VERSION} |grep Depends: | sed "s/Depends: //"`
+ # separate deps with newline, then find VPP dependency and filter out the version
+ VERSION=`echo ${JVPP_DEPS}| sed "s/, /\\n/" |grep "vpp " | sed "s/).*//" |sed "s/.* //"`
+
+ # Write a file that will echo VPP dependencies
+ echo -n 'echo' > vpp_dependencies
+ echo " \"vpp (= ${VERSION}), vpp-plugin-core (= ${VERSION}), vpp-api-java (= ${JVPP_VERSION})\"" >> vpp_dependencies
+ chmod +x vpp_dependencies
+
+ # Overwrite default dependencies file
+ mv vpp_dependencies packaging/deb/common/
+ fi