1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-08-04 05:02:11 +03:00
Files
mariadb-columnstore-engine/build/createrepo.sh

55 lines
1.4 KiB
Bash
Executable File

#!/bin/bash
# This script creates a repository from packages in result directory
# Should be executed by root
set -eo pipefail
SCRIPT_LOCATION=$(dirname "$0")
source "$SCRIPT_LOCATION"/utils.sh
optparse.define short=D long=distro desc="OS" variable=OS
source $(optparse.build)
echo "Arguments received: $@"
BUILDDIR="verylongdirnameforverystrangecpackbehavior";
COLUMNSTORE_RPM_PACKAGES_PATH="/mdb/${BUILDDIR}/*.rpm"
CMAPI_RPM_PACKAGES_PATH="/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.rpm"
COLUMNSTORE_DEB_PACKAGES_PATH="/mdb/*.deb"
CMAPI_DEB_PACKAGES_PATH="/mdb/${BUILDDIR}/storage/columnstore/columnstore/cmapi/*.deb"
RESULT=$(echo "$OS" | sed 's/://g' | sed 's/\//-/g')
if [ "$EUID" -ne 0 ]; then
error "Please run script as root"
exit 1
fi
if [[ -z "${OS:-}" ]]; then
echo "Please provide provide --distro parameter, e.g. ./createrepo.sh --distro ubuntu:24.04"
exit 1
fi
pkg_format="deb"
if [[ "$OS" == *"rocky"* ]]; then
pkg_format="rpm"
fi
cd "/mdb/${BUILDDIR}"
if [[ "${pkg_format}" == "rpm" ]]; then
dnf install -q -y createrepo
mv -v ${COLUMNSTORE_RPM_PACKAGES_PATH} ${CMAPI_RPM_PACKAGES_PATH} "./${RESULT}/"
createrepo "./${RESULT}"
else
apt update && apt install -y dpkg-dev
mv -v ${COLUMNSTORE_DEB_PACKAGES_PATH} ${CMAPI_DEB_PACKAGES_PATH} "./${RESULT}/"
dpkg-scanpackages "${RESULT}" | gzip > "./${RESULT}/Packages.gz"
fi
mkdir -p "/drone/src/${RESULT}"
cp -vrf "./${RESULT}" "/drone/src/${RESULT}"