diff --git a/.drone.jsonnet b/.drone.jsonnet index 65da997f8..8a77f8992 100644 --- a/.drone.jsonnet +++ b/.drone.jsonnet @@ -737,7 +737,7 @@ local Pipeline(branch, platform, event, arch='amd64', server='10.6-enterprise') }, volumes: [pipeline._volumes.mdb], commands: [ - 'bash /mdb/' + builddir + '/storage/columnstore/columnstore/build/createrepo.sh --distro ' + platform, + 'bash /mdb/' + builddir + '/storage/columnstore/columnstore/build/createrepo.sh --result ' + result, ], }, { diff --git a/build/createrepo.sh b/build/createrepo.sh index e7e1185e7..c326d2b5a 100755 --- a/build/createrepo.sh +++ b/build/createrepo.sh @@ -8,7 +8,7 @@ set -eo pipefail SCRIPT_LOCATION=$(dirname "$0") source "$SCRIPT_LOCATION"/utils.sh -optparse.define short=D long=distro desc="OS" variable=OS +optparse.define short=R long=result desc="Directory with packages" variable=RESULT source $(optparse.build) echo "Arguments received: $@" @@ -20,57 +20,49 @@ COLUMNSTORE_DEB_PACKAGES_PATH="/mdb/*.deb" CMAPI_DEB_PACKAGES_PATH="/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.deb" if [ "$EUID" -ne 0 ]; then - error "Please run script as root" - exit 1 -fi - -if [[ -z "${OS:-}" ]]; then - echo "Please provide --distro parameter, e.g. ./createrepo.sh --distro ubuntu:24.04" + error "Please run script as root" exit 1 fi -RESULT=$(echo "$OS" | sed 's/://g' | sed 's/\//-/g') - -pkg_format="deb" -if [[ "$OS" == *"rocky"* ]]; then - pkg_format="rpm" +if [[ -z "${RESULT:-}" ]]; then + echo "Please provide provide --result parameter, e.g. ./createrepo.sh --result ubuntu24.04" + exit 1 fi cd "/mdb/${BUILDDIR}" -if ! compgen -G "/mdb/${BUILDDIR}/*.rpm" > /dev/null \ - && ! compgen -G "/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.rpm" > /dev/null \ - && ! compgen -G "/mdb/${BUILDDIR}/*.deb" > /dev/null \ - && ! compgen -G "/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.deb" > /dev/null -then +if ! compgen -G "/mdb/${BUILDDIR}/*.rpm" >/dev/null && + ! compgen -G "/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.rpm" >/dev/null && + ! compgen -G "/mdb/${BUILDDIR}/*.deb" >/dev/null && + ! compgen -G "/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.deb" >/dev/null; then echo "None of the cmapi or columnstore packages found. Failing!" exit 1 fi echo "Adding columnstore packages to repository..." -if [[ "${pkg_format}" == "rpm" && $(compgen -G "$COLUMNSTORE_RPM_PACKAGES_PATH") ]]; then +if [[ $(compgen -G "$COLUMNSTORE_RPM_PACKAGES_PATH") ]]; then mv -v $COLUMNSTORE_RPM_PACKAGES_PATH "./${RESULT}/" -elif [[ "${pkg_format}" == "deb" && $(compgen -G "$COLUMNSTORE_DEB_PACKAGES_PATH") ]]; then +elif [[ $(compgen -G "$COLUMNSTORE_DEB_PACKAGES_PATH") ]]; then mv -v $COLUMNSTORE_DEB_PACKAGES_PATH "./${RESULT}/" else echo "Columnstore packages are not found!" fi echo "Adding cmapi packages to repository..." -if [[ "${pkg_format}" == "rpm" && $(compgen -G "$CMAPI_RPM_PACKAGES_PATH") ]]; then +if [[ $(compgen -G "$CMAPI_RPM_PACKAGES_PATH") ]]; then mv -v $CMAPI_RPM_PACKAGES_PATH "./${RESULT}/" -elif [[ "${pkg_format}" == "deb" && $(compgen -G "$CMAPI_DEB_PACKAGES_PATH") ]]; then +elif [[ $(compgen -G "$CMAPI_DEB_PACKAGES_PATH") ]]; then mv -v $CMAPI_DEB_PACKAGES_PATH "./${RESULT}/" else echo "Cmapi packages are not found!" fi -if [[ "${pkg_format}" == "rpm" ]]; then +if [[ $(compgen -G "./${RESULT}/*.rpm") ]]; then dnf install -q -y createrepo createrepo "./${RESULT}" else apt update && apt install -y dpkg-dev - dpkg-scanpackages "${RESULT}" | gzip > "./${RESULT}/Packages.gz" + dpkg-scanpackages "${RESULT}" | gzip >"./${RESULT}/Packages.gz" fi mkdir -p "/drone/src/${RESULT}"