X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=jjb%2Fhc2vpp%2Finclude-raw-hc2vpp-pkg-push.sh;h=d32cfee918685fdc11f4b11467c4c6b0fc7bdc84;hb=b2d46f8e46d7d74c796c2d1afe6181d58fd8406a;hp=d4c2be38faf2c1e0cdd3dffc8c2dd6e7d750cc60;hpb=46a463c10ba5f2721132f6b5920e8fedbceca8a0;p=ci-management.git diff --git a/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh b/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh index d4c2be38f..d32cfee91 100644 --- a/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh +++ b/jjb/hc2vpp/include-raw-hc2vpp-pkg-push.sh @@ -1,60 +1,79 @@ #!/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 + 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_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; }'` + VERSION=`apt-cache showpkg vpp-api-java |grep "$JVPP_VERSION" |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_dependencies + chmod +x vpp_dependencies + + # Overwrite default dependencies file + mv vpp_dependencies packaging/deb/common/ + fi fi -if [ "${OS}" == "centos7" ]; then +# Build package +if [[ "${OS}" == "centos7" ]]; then # Build the rpms ./packaging/rpm/rpmbuild.sh # Find the files - RPMS=$(find . -type f -iname '*.rpm') - SRPMS=$(find . -type f -iname '*.srpm') - SRCRPMS=$(find . -type f -name '*.src.rpm') - # publish hc2vpp packages - for i in $RPMS $SRPMS $SRCRPMS + RPMS=$(find ./packaging/ -type f -iname '*.rpm') + SRPMS=$(find ./packaging/ -type f -iname '*.srpm') + SRCRPMS=$(find ./packaging/ -type f -name '*.src.rpm') + + # Publish hc2vpp packages + for i in ${RPMS} ${SRPMS} ${SRCRPMS} do push_rpm "$i" done -elif [ "${OS}" == "ubuntu1404" ]; then +elif [[ "${OS}" == "ubuntu1604" ]]; then # Build the debs - ./packaging/deb/trusty/debuild.sh + ./packaging/deb/xenial/debuild.sh # Find the files - DEBS=$(find . -type f -iname '*.deb') - # publish hc2vpp packages - for i in $DEBS + DEBS=$(find ./packaging/ -type f -iname '*.deb') + + # Publish hc2vpp packages + for i in ${DEBS} do push_deb "$i" done -elif [ "${OS}" == "ubuntu1604" ]; then +elif [[ "${OS}" == "ubuntu1804" ]]; then # Build the debs - ./packaging/deb/xenial/debuild.sh + ./packaging/deb/bionic/debuild.sh # Find the files - DEBS=$(find . -type f -iname '*.deb') - # publish hc2vpp packages - for i in $DEBS + DEBS=$(find ./packaging/ -type f -iname '*.deb') + + # Publish hc2vpp packages + for i in ${DEBS} do push_deb "$i" done