mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-04-18 21:44:02 +03:00
move deb packaging files from server to engine repo
This commit is contained in:
parent
f0240a1fc5
commit
68f15c9291
@ -7,7 +7,7 @@ local platforms = {
|
|||||||
local server_ref_map = {
|
local server_ref_map = {
|
||||||
develop: '10.6 https://github.com/MariaDB/server',
|
develop: '10.6 https://github.com/MariaDB/server',
|
||||||
'develop-1.5': '10.5 https://github.com/MariaDB/server',
|
'develop-1.5': '10.5 https://github.com/MariaDB/server',
|
||||||
'columnstore-1.5.4-1': '10.5-enterprise https://github.com/mariadb-corporation/MariaDBEnterprise',
|
'columnstore-1.5.4-1': '10.5.6-4 https://github.com/mariadb-corporation/MariaDBEnterprise',
|
||||||
};
|
};
|
||||||
|
|
||||||
local builddir = 'verylongdirnameforverystrangecpackbehavior';
|
local builddir = 'verylongdirnameforverystrangecpackbehavior';
|
||||||
@ -40,12 +40,14 @@ local platformMap(branch, platform) =
|
|||||||
local Pipeline(branch, platform, event) = {
|
local Pipeline(branch, platform, event) = {
|
||||||
local pkg_format = if (std.split(platform, ':')[0] == 'centos' || std.split(platform, ':')[0] == 'opensuse/leap') then 'rpm' else 'deb',
|
local pkg_format = if (std.split(platform, ':')[0] == 'centos' || std.split(platform, ':')[0] == 'opensuse/leap') then 'rpm' else 'deb',
|
||||||
local init = if (pkg_format == 'rpm') then '/usr/lib/systemd/systemd' else 'systemd',
|
local init = if (pkg_format == 'rpm') then '/usr/lib/systemd/systemd' else 'systemd',
|
||||||
|
local mtr_path = if (pkg_format == 'rpm') then '/usr/share/mysql-test' else '/usr/share/mysql/mysql-test',
|
||||||
|
local socket_path = if (pkg_format == 'rpm') then '/var/lib/mysql/mysql.sock' else '/run/mysqld/mysqld.sock',
|
||||||
local img = if (std.split(platform, ':')[0] == 'centos') then platform else 'romcheck/' + std.strReplace(platform, '/', '-'),
|
local img = if (std.split(platform, ':')[0] == 'centos') then platform else 'romcheck/' + std.strReplace(platform, '/', '-'),
|
||||||
local regression_ref = if (std.split(branch, '-')[0] == 'develop') then branch else 'develop-1.5',
|
local regression_ref = if (std.split(branch, '-')[0] == 'develop') then branch else 'develop-1.5',
|
||||||
|
|
||||||
local pipeline = self,
|
local pipeline = self,
|
||||||
|
|
||||||
publish(step_prefix='pkg'):: {
|
publish(step_prefix='pkg', eventp=event):: {
|
||||||
name: 'publish ' + step_prefix,
|
name: 'publish ' + step_prefix,
|
||||||
image: 'plugins/s3-sync',
|
image: 'plugins/s3-sync',
|
||||||
when: {
|
when: {
|
||||||
@ -60,7 +62,8 @@ local Pipeline(branch, platform, event) = {
|
|||||||
from_secret: 'aws_secret_access_key',
|
from_secret: 'aws_secret_access_key',
|
||||||
},
|
},
|
||||||
source: 'result',
|
source: 'result',
|
||||||
target: branch + '/' + event + '/${DRONE_BUILD_NUMBER}/' + std.strReplace(std.strReplace(platform, ':', ''), '/', '-'),
|
target: branch + '/' + eventp + '/${DRONE_BUILD_NUMBER}/' + std.strReplace(std.strReplace(platform, ':', ''), '/', '-'),
|
||||||
|
delete: 'true',
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
_volumes:: {
|
_volumes:: {
|
||||||
@ -101,15 +104,15 @@ local Pipeline(branch, platform, event) = {
|
|||||||
commands: [
|
commands: [
|
||||||
// clone mtr repo
|
// clone mtr repo
|
||||||
'git clone --depth 1 https://github.com/mariadb-corporation/columnstore-tests',
|
'git clone --depth 1 https://github.com/mariadb-corporation/columnstore-tests',
|
||||||
'docker run --volume /sys/fs/cgroup:/sys/fs/cgroup:ro --env DEBIAN_FRONTEND=noninteractive --env MCS_USE_S3_STORAGE=0 --name mtr$${DRONE_BUILD_NUMBER} --privileged --detach ' + img + ' ' + init + ' --unit=basic.target',
|
'docker run --volume /sys/fs/cgroup:/sys/fs/cgroup:ro --env MYSQL_TEST_DIR=' + mtr_path + ' --env DEBIAN_FRONTEND=noninteractive --env MCS_USE_S3_STORAGE=0 --name mtr$${DRONE_BUILD_NUMBER} --privileged --detach ' + img + ' ' + init + ' --unit=basic.target',
|
||||||
'docker cp result mtr$${DRONE_BUILD_NUMBER}:/',
|
'docker cp result mtr$${DRONE_BUILD_NUMBER}:/',
|
||||||
if (std.split(platform, ':')[0] == 'centos') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "yum install -y epel-release which rsyslog hostname && yum install -y /result/*.' + pkg_format + '"' else '',
|
if (std.split(platform, '/')[0] == 'opensuse') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "zypper install -y which hostname rsyslog patch perl-Memoize-ExpireLRU && zypper install -y --allow-unsigned-rpm /result/*.' + pkg_format + '"' else '',
|
||||||
if (std.split(platform, ':')[0] == 'debian' || std.split(platform, ':')[0] == 'ubuntu') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "apt update && apt install -y rsyslog hostname && apt install -y -f /result/*.' + pkg_format + '"' else '',
|
if (std.split(platform, ':')[0] == 'centos') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "yum install -y epel-release diffutils which rsyslog hostname patch perl-Getopt-Long perl-Memoize perl-Time-HiRes cracklib-dicts && yum install -y /result/*.' + pkg_format + '"' else '',
|
||||||
if (std.split(platform, '/')[0] == 'opensuse') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "zypper install -y which hostname rsyslog && zypper install -y --allow-unsigned-rpm /result/*.' + pkg_format + '"' else '',
|
if (pkg_format == 'deb') then 'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "apt update && apt install -y rsyslog hostname patch && apt install -y -f /result/*.' + pkg_format + '"' else '',
|
||||||
'docker cp columnstore-tests/mysql-test/suite/columnstore mtr$${DRONE_BUILD_NUMBER}:/usr/share/mysql-test/suite/',
|
'docker cp columnstore-tests/mysql-test/suite/columnstore mtr$${DRONE_BUILD_NUMBER}:' + mtr_path + '/suite/',
|
||||||
'docker exec -t mtr$${DRONE_BUILD_NUMBER} systemctl start mariadb',
|
'docker exec -t mtr$${DRONE_BUILD_NUMBER} systemctl start mariadb',
|
||||||
'docker exec -t mtr$${DRONE_BUILD_NUMBER} mariadb --socket=/var/lib/mysql/mysql.sock -e "create database if not exists test;"',
|
'docker exec -t mtr$${DRONE_BUILD_NUMBER} mariadb -e "create database if not exists test;"',
|
||||||
'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "cd /usr/share/mysql-test && ./mtr --force --max-test-fail=0 --suite=columnstore/basic --skip-test-list=suite/columnstore/basic/failed.def --extern socket=/var/lib/mysql/mysql.sock"',
|
'docker exec -t mtr$${DRONE_BUILD_NUMBER} bash -c "cd ' + mtr_path + ' && ./mtr --extern socket=' + socket_path + ' --force --max-test-fail=0 --suite=columnstore/basic --skip-test-list=suite/columnstore/basic/failed.def"',
|
||||||
],
|
],
|
||||||
},
|
},
|
||||||
mtrlog:: {
|
mtrlog:: {
|
||||||
@ -125,7 +128,7 @@ local Pipeline(branch, platform, event) = {
|
|||||||
'docker exec -t mtr$${DRONE_BUILD_NUMBER} cat /var/log/mariadb/columnstore/debug.log || echo "missing columnstore debug.log"',
|
'docker exec -t mtr$${DRONE_BUILD_NUMBER} cat /var/log/mariadb/columnstore/debug.log || echo "missing columnstore debug.log"',
|
||||||
'echo "---------- end columnstore debug log ----------"',
|
'echo "---------- end columnstore debug log ----------"',
|
||||||
'echo "---------- end columnstore debug log ----------"',
|
'echo "---------- end columnstore debug log ----------"',
|
||||||
'docker cp mtr$${DRONE_BUILD_NUMBER}:/usr/share/mysql-test/var/log /drone/src/result/mtr-logs || echo "missing /usr/share/mysql-test/var/log"',
|
'docker cp mtr$${DRONE_BUILD_NUMBER}:' + mtr_path + '/var/log /drone/src/result/mtr-logs || echo "missing ' + mtr_path + '/var/log"',
|
||||||
'docker stop mtr$${DRONE_BUILD_NUMBER} && docker rm mtr$${DRONE_BUILD_NUMBER} || echo "cleanup mtr failure"',
|
'docker stop mtr$${DRONE_BUILD_NUMBER} && docker rm mtr$${DRONE_BUILD_NUMBER} || echo "cleanup mtr failure"',
|
||||||
],
|
],
|
||||||
when: {
|
when: {
|
||||||
@ -267,7 +270,7 @@ local Pipeline(branch, platform, event) = {
|
|||||||
commands: [
|
commands: [
|
||||||
'mkdir -p /mdb/' + builddir + ' && cd /mdb/' + builddir,
|
'mkdir -p /mdb/' + builddir + ' && cd /mdb/' + builddir,
|
||||||
'git config --global url."https://github.com/".insteadOf git@github.com:',
|
'git config --global url."https://github.com/".insteadOf git@github.com:',
|
||||||
'git clone --recurse-submodules --depth 1 --branch $$SERVER_REF .',
|
'git -c submodule."storage/rocksdb/rocksdb".update=none -c submodule."wsrep-lib".update=none -c submodule."storage/columnstore/columnstore".update=none clone --recurse-submodules --depth 1 --branch $$SERVER_REF .',
|
||||||
'git rev-parse HEAD',
|
'git rev-parse HEAD',
|
||||||
'git config cmake.update-submodules no',
|
'git config cmake.update-submodules no',
|
||||||
'rm -rf storage/columnstore/columnstore',
|
'rm -rf storage/columnstore/columnstore',
|
||||||
@ -284,23 +287,27 @@ local Pipeline(branch, platform, event) = {
|
|||||||
},
|
},
|
||||||
commands: [
|
commands: [
|
||||||
'cd /mdb/' + builddir,
|
'cd /mdb/' + builddir,
|
||||||
"sed -i -e '/-DBUILD_CONFIG=mysql_release/d' debian/rules",
|
// Temporary usage patched autobake-deb.sh till changes come in upstream server repo
|
||||||
"sed -i -e '/Package: libmariadbd19/,/^$/d' debian/control",
|
// "rm -v debian/mariadb-plugin-columnstore.* debian/autobake-deb.sh",
|
||||||
"sed -i -e '/Package: libmariadbd-dev/,/^$/d' debian/control",
|
// "cp storage/columnstore/columnstore/debian/autobake-deb.sh debian/",
|
||||||
|
// "sed -i '/Package: mariadb-plugin-columnstore/,/^$/d' -i debian/control",
|
||||||
|
// Unstrip columnstore while using TRAVIS flag (for speeding up builds)
|
||||||
|
"sed -i '/DPLUGIN_COLUMNSTORE/d' debian/autobake-deb.sh",
|
||||||
|
"sed -i '/Package: mariadb-plugin-columnstore/d' debian/autobake-deb.sh",
|
||||||
|
// Tweak debian packaging stuff
|
||||||
"sed -i -e '/Package: mariadb-backup/,/^$/d' debian/control",
|
"sed -i -e '/Package: mariadb-backup/,/^$/d' debian/control",
|
||||||
"sed -i -e '/Package: mariadb-plugin-connect/,/^$/d' debian/control",
|
"sed -i -e '/Package: mariadb-plugin-connect/,/^$/d' debian/control",
|
||||||
"sed -i -e '/Package: mariadb-plugin-cracklib-password-check/,/^$/d' debian/control",
|
|
||||||
"sed -i -e '/Package: mariadb-plugin-gssapi*/,/^$/d' debian/control",
|
"sed -i -e '/Package: mariadb-plugin-gssapi*/,/^$/d' debian/control",
|
||||||
"sed -i -e '/Package: mariadb-plugin-xpand*/,/^$/d' debian/control",
|
"sed -i -e '/Package: mariadb-plugin-xpand*/,/^$/d' debian/control",
|
||||||
"sed -i -e '/wsrep/d' debian/mariadb-server-*.install",
|
"sed -i -e '/wsrep/d' debian/mariadb-server-*.install",
|
||||||
|
// Disable galera
|
||||||
"sed -i -e 's/Depends: galera.*/Depends:/' debian/control",
|
"sed -i -e 's/Depends: galera.*/Depends:/' debian/control",
|
||||||
"sed -i -e 's/\"galera-enterprise-4\"//' cmake/cpack_rpm.cmake",
|
"sed -i -e 's/\"galera-enterprise-4\"//' cmake/cpack_rpm.cmake",
|
||||||
"sed -i '/columnstore/Id' debian/autobake-deb.sh",
|
// Leave test package for mtr
|
||||||
"sed -i 's/.*flex.*/echo/' debian/autobake-deb.sh",
|
"sed -i '/(mariadb|mysql)-test/d;/-test/d' debian/autobake-deb.sh",
|
||||||
// change plugin_maturity level
|
"sed -i '/test-embedded/d' debian/mariadb-test.install",
|
||||||
|
// Change plugin_maturity level
|
||||||
// "sed -i 's/BETA/GAMMA/' storage/columnstore/CMakeLists.txt",
|
// "sed -i 's/BETA/GAMMA/' storage/columnstore/CMakeLists.txt",
|
||||||
// remove a file from deb packaging
|
|
||||||
// "sed -i '/mcs-start-storagemanager.py/d' debian/mariadb-plugin-columnstore.install",
|
|
||||||
platformMap(branch, platform),
|
platformMap(branch, platform),
|
||||||
if (pkg_format == 'rpm') then 'createrepo .' else 'dpkg-scanpackages ../ | gzip > ../Packages.gz',
|
if (pkg_format == 'rpm') then 'createrepo .' else 'dpkg-scanpackages ../ | gzip > ../Packages.gz',
|
||||||
],
|
],
|
||||||
@ -323,20 +330,16 @@ local Pipeline(branch, platform, event) = {
|
|||||||
},
|
},
|
||||||
] +
|
] +
|
||||||
[pipeline.publish()] +
|
[pipeline.publish()] +
|
||||||
(if (event == 'cron') then [pipeline.publish('pkg latest')] else []) +
|
(if (event == 'cron') || (event == 'push') then [pipeline.publish('pkg latest', 'latest')] else []) +
|
||||||
//(if (platform == 'centos:8' && event == 'cron') then [pipeline.dockerfile] else []) +
|
// (if (platform == 'centos:8' && event == 'cron') then [pipeline.dockerfile] + [pipeline.docker] + [pipeline.ecr] else []) +
|
||||||
//(if (platform == 'centos:8' && event == 'cron') then [pipeline.docker] else []) +
|
|
||||||
//(if (platform == 'centos:8' && event == 'cron') then [pipeline.ecr] else []) +
|
|
||||||
(if (platform == 'centos:7') then [pipeline.mtr] else []) +
|
|
||||||
(if (platform == 'centos:7') then [pipeline.mtrlog] else []) +
|
|
||||||
(if (platform == 'centos:7') then [pipeline.publish('mtr')] else []) +
|
|
||||||
(if (event == 'cron') then [pipeline.publish('mtr latest')] else []) +
|
|
||||||
[pipeline.smoke] +
|
[pipeline.smoke] +
|
||||||
[pipeline.smokelog] +
|
[pipeline.smokelog] +
|
||||||
|
(if (pkg_format == 'rpm') then [pipeline.mtr] + [pipeline.mtrlog] + [pipeline.publish('mtr')] else []) +
|
||||||
|
(if (event == 'cron' && pkg_format == 'rpm') || (event == 'push') then [pipeline.publish('mtr latest', 'latest')] else []) +
|
||||||
[pipeline.regression] +
|
[pipeline.regression] +
|
||||||
[pipeline.regressionlog] +
|
[pipeline.regressionlog] +
|
||||||
[pipeline.publish('regression')] +
|
[pipeline.publish('regression')] +
|
||||||
(if (event == 'cron') then [pipeline.publish('regression latest')] else []),
|
(if (event == 'cron') || (event == 'push') then [pipeline.publish('regression latest', 'latest')] else []),
|
||||||
volumes: [pipeline._volumes.mdb { temp: {} }, pipeline._volumes.docker { host: { path: '/var/run/docker.sock' } }],
|
volumes: [pipeline._volumes.mdb { temp: {} }, pipeline._volumes.docker { host: { path: '/var/run/docker.sock' } }],
|
||||||
trigger: {
|
trigger: {
|
||||||
event: [event],
|
event: [event],
|
||||||
|
130
debian/autobake-deb.sh
vendored
Executable file
130
debian/autobake-deb.sh
vendored
Executable file
@ -0,0 +1,130 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# Build MariaDB .deb packages for test and release at mariadb.org
|
||||||
|
#
|
||||||
|
# Purpose of this script:
|
||||||
|
# Always keep the actual packaging as up-to-date as possible following the latest
|
||||||
|
# Debian policy and targeting Debian Sid. Then case-by-case run in autobake-deb.sh
|
||||||
|
# tests for backwards compatibility and strip away parts on older builders or
|
||||||
|
# specfic build environments.
|
||||||
|
|
||||||
|
# Exit immediately on any error
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# This file is invocated from Buildbot and Travis-CI to build deb packages.
|
||||||
|
# As both of those CI systems have many parallel jobs that include different
|
||||||
|
# parts of the test suite, we don't need to run the mysql-test-run at all when
|
||||||
|
# building the deb packages here.
|
||||||
|
export DEB_BUILD_OPTIONS="nocheck $DEB_BUILD_OPTIONS"
|
||||||
|
|
||||||
|
if [[ -d storage/columnstore/columnstore/debian ]]; then
|
||||||
|
cp -v storage/columnstore/columnstore/debian/mariadb-plugin-columnstore.* debian/
|
||||||
|
echo >> debian/control
|
||||||
|
cat storage/columnstore/columnstore/debian/control >> debian/control
|
||||||
|
fi
|
||||||
|
|
||||||
|
# General CI optimizations to keep build output smaller
|
||||||
|
if [[ $TRAVIS ]] || [[ $GITLAB_CI ]]
|
||||||
|
then
|
||||||
|
# On both Travis and Gitlab the output log must stay under 4MB so make the
|
||||||
|
# build less verbose
|
||||||
|
sed '/Add support for verbose builds/,/^$/d' -i debian/rules
|
||||||
|
|
||||||
|
# MCOL-4149: ColumnStore builds are so slow and big that they must be skipped on
|
||||||
|
# both Travis-CI and Gitlab-CI
|
||||||
|
sed 's|-DPLUGIN_COLUMNSTORE=YES|-DPLUGIN_COLUMNSTORE=NO|' -i debian/rules
|
||||||
|
sed "/Package: mariadb-plugin-columnstore/,/^$/d" -i debian/control
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Don't build or try to put files in a package for selected plugins and compontents on Travis-CI
|
||||||
|
# in order to keep build small (in both duration and disk space)
|
||||||
|
if [[ $TRAVIS ]]
|
||||||
|
then
|
||||||
|
# Test suite package not relevant on Travis-CI
|
||||||
|
sed 's|DINSTALL_MYSQLTESTDIR=share/mysql/mysql-test|DINSTALL_MYSQLTESTDIR=false|' -i debian/rules
|
||||||
|
sed '/Package: mariadb-test-data/,/^$/d' -i debian/control
|
||||||
|
sed '/Package: mariadb-test$/,/^$/d' -i debian/control
|
||||||
|
|
||||||
|
# Extra plugins such as Mroonga, Spider, OQgraph, Sphinx and the embedded build can safely be skipped
|
||||||
|
sed 's|-DDEB|-DPLUGIN_MROONGA=NO -DPLUGIN_ROCKSDB=NO -DPLUGIN_SPIDER=NO -DPLUGIN_OQGRAPH=NO -DPLUGIN_PERFSCHEMA=NO -DPLUGIN_SPHINX=NO -DWITH_EMBEDDED_SERVER=OFF -DDEB|' -i debian/rules
|
||||||
|
sed "/Package: mariadb-plugin-mroonga/,/^$/d" -i debian/control
|
||||||
|
sed "/Package: mariadb-plugin-rocksdb/,/^$/d" -i debian/control
|
||||||
|
sed "/Package: mariadb-plugin-spider/,/^$/d" -i debian/control
|
||||||
|
sed "/Package: mariadb-plugin-oqgraph/,/^$/d" -i debian/control
|
||||||
|
sed "/ha_sphinx.so/d" -i debian/mariadb-server-10.6.install
|
||||||
|
sed "/Package: libmariadbd19/,/^$/d" -i debian/control
|
||||||
|
sed "/Package: libmariadbd-dev/,/^$/d" -i debian/control
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ $(arch) =~ i[346]86 ]]
|
||||||
|
then
|
||||||
|
sed "/Package: mariadb-plugin-rocksdb/,/^$/d" -i debian/control
|
||||||
|
fi
|
||||||
|
|
||||||
|
# If rocksdb-tools is not available (before Debian Buster and Ubuntu Disco)
|
||||||
|
# remove the dependency from the RocksDB plugin so it can install properly
|
||||||
|
# and instead ship the one built from MariaDB sources
|
||||||
|
if ! apt-cache madison rocksdb-tools | grep 'rocksdb-tools' >/dev/null 2>&1
|
||||||
|
then
|
||||||
|
sed '/rocksdb-tools/d' -i debian/control
|
||||||
|
sed '/sst_dump/d' -i debian/not-installed
|
||||||
|
echo "usr/bin/sst_dump" >> debian/mariadb-plugin-rocksdb.install
|
||||||
|
fi
|
||||||
|
|
||||||
|
# From Debian Buster/Ubuntu Bionic, libcurl4 replaces libcurl3.
|
||||||
|
if ! apt-cache madison libcurl4 | grep 'libcurl4' >/dev/null 2>&1
|
||||||
|
then
|
||||||
|
sed 's/libcurl4/libcurl3/g' -i debian/control
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Adjust changelog, add new version
|
||||||
|
echo "Incrementing changelog and starting build scripts"
|
||||||
|
|
||||||
|
# Find major.minor version
|
||||||
|
source ./VERSION
|
||||||
|
UPSTREAM="${MYSQL_VERSION_MAJOR}.${MYSQL_VERSION_MINOR}.${MYSQL_VERSION_PATCH}${MYSQL_VERSION_EXTRA}"
|
||||||
|
PATCHLEVEL="+maria"
|
||||||
|
LOGSTRING="MariaDB build"
|
||||||
|
CODENAME="$(lsb_release -sc)"
|
||||||
|
EPOCH="1:"
|
||||||
|
|
||||||
|
dch -b -D "${CODENAME}" -v "${EPOCH}${UPSTREAM}${PATCHLEVEL}~${CODENAME}" "Automatic build with ${LOGSTRING}."
|
||||||
|
|
||||||
|
echo "Creating package version ${EPOCH}${UPSTREAM}${PATCHLEVEL}~${CODENAME} ... "
|
||||||
|
|
||||||
|
# On Travis CI and Gitlab-CI, use -b to build binary only packages as there is
|
||||||
|
# no need to waste time on generating the source package.
|
||||||
|
if [[ $TRAVIS ]]
|
||||||
|
then
|
||||||
|
BUILDPACKAGE_FLAGS="-b"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Use eatmydata is available to build faster with less I/O, skipping fsync()
|
||||||
|
# during the entire build process (safe because a build can always be restarted)
|
||||||
|
if which eatmydata > /dev/null
|
||||||
|
then
|
||||||
|
BUILDPACKAGE_PREPEND=eatmydata
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Build the package
|
||||||
|
# Pass -I so that .git and other unnecessary temporary and source control files
|
||||||
|
# will be ignored by dpkg-source when creating the tar.gz source package.
|
||||||
|
fakeroot $BUILDPACKAGE_PREPEND dpkg-buildpackage -us -uc -I $BUILDPACKAGE_FLAGS || sleep 600
|
||||||
|
|
||||||
|
# If the step above fails due to missing dependencies, you can manually run
|
||||||
|
# sudo mk-build-deps debian/control -r -i
|
||||||
|
|
||||||
|
# Don't log package contents on Travis-CI or Gitlab-CI to save time and log size
|
||||||
|
if [[ ! $TRAVIS ]] && [[ ! $GITLAB_CI ]]
|
||||||
|
then
|
||||||
|
echo "List package contents ..."
|
||||||
|
cd ..
|
||||||
|
for package in *.deb
|
||||||
|
do
|
||||||
|
echo "$package" | cut -d '_' -f 1
|
||||||
|
dpkg-deb -c "$package" | awk '{print $1 " " $2 " " $6 " " $7 " " $8}' | sort -k 3
|
||||||
|
echo "------------------------------------------------"
|
||||||
|
done
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "Build complete"
|
18
debian/control
vendored
Normal file
18
debian/control
vendored
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
Package: mariadb-plugin-columnstore
|
||||||
|
Architecture: amd64 i386
|
||||||
|
Depends: binutils,
|
||||||
|
libjemalloc1 | libjemalloc2,
|
||||||
|
libsnappy1 | libsnappy1v5,
|
||||||
|
mariadb-server-10.6 (= ${binary:Version}),
|
||||||
|
net-tools,
|
||||||
|
python3,
|
||||||
|
${misc:Depends},
|
||||||
|
${shlibs:Depends}
|
||||||
|
Breaks: mariadb-columnstore-libs,
|
||||||
|
mariadb-columnstore-platform
|
||||||
|
Replaces: mariadb-columnstore-libs,
|
||||||
|
mariadb-columnstore-platform
|
||||||
|
Description: MariaDB ColumnStore storage engine
|
||||||
|
The MariaDB ColumnStore storage engine is a high-performance columnar
|
||||||
|
analytical engine, aimed at rapid processing of analytical queries on very
|
||||||
|
large amounts of data.
|
160
debian/mariadb-plugin-columnstore.install
vendored
Normal file
160
debian/mariadb-plugin-columnstore.install
vendored
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
etc/columnstore/AlarmConfig.xml
|
||||||
|
etc/columnstore/Columnstore.xml
|
||||||
|
etc/columnstore/ConsoleCmds.xml
|
||||||
|
etc/columnstore/ErrorMessage.txt
|
||||||
|
etc/columnstore/MessageFile.txt
|
||||||
|
etc/columnstore/ProcessConfig.xml
|
||||||
|
etc/columnstore/storagemanager.cnf
|
||||||
|
etc/mysql/mariadb.conf.d/columnstore.cnf
|
||||||
|
usr/bin/DDLProc
|
||||||
|
usr/bin/DMLProc
|
||||||
|
usr/bin/ExeMgr
|
||||||
|
usr/bin/MCSInstanceCmds.sh
|
||||||
|
usr/bin/MCSVolumeCmds.sh
|
||||||
|
usr/bin/MCSgetCredentials.sh
|
||||||
|
usr/bin/PrimProc
|
||||||
|
usr/bin/ProcMgr
|
||||||
|
usr/bin/ProcMon
|
||||||
|
usr/bin/ServerMonitor
|
||||||
|
usr/bin/StorageManager
|
||||||
|
usr/bin/WriteEngineServer
|
||||||
|
usr/bin/autoConfigure
|
||||||
|
usr/bin/bulklogReport.sh
|
||||||
|
usr/bin/clearShm
|
||||||
|
usr/bin/cleartablelock
|
||||||
|
usr/bin/columnstore
|
||||||
|
usr/bin/columnstore-post-install
|
||||||
|
usr/bin/columnstore-pre-uninstall
|
||||||
|
usr/bin/columnstoreClusterTester.sh
|
||||||
|
usr/bin/columnstoreDBWrite
|
||||||
|
usr/bin/columnstoreSupport
|
||||||
|
usr/bin/columnstoreSyslogSetup.sh
|
||||||
|
usr/bin/columnstore_installer
|
||||||
|
usr/bin/columnstore_module_installer.sh
|
||||||
|
usr/bin/columnstore_os_check.sh
|
||||||
|
usr/bin/columnstore_run.sh
|
||||||
|
usr/bin/colxml
|
||||||
|
usr/bin/configReport.sh
|
||||||
|
usr/bin/configxml.sh
|
||||||
|
usr/bin/controllernode
|
||||||
|
usr/bin/cpimport
|
||||||
|
usr/bin/cpimport.bin
|
||||||
|
usr/bin/cplogger
|
||||||
|
usr/bin/dbbuilder
|
||||||
|
usr/bin/dbmsReport.sh
|
||||||
|
usr/bin/dbrmctl
|
||||||
|
usr/bin/ddlcleanup
|
||||||
|
usr/bin/disable-rep-columnstore.sh
|
||||||
|
usr/bin/editem
|
||||||
|
usr/bin/getMySQLpw
|
||||||
|
usr/bin/hardwareReport.sh
|
||||||
|
usr/bin/idbmeminfo
|
||||||
|
usr/bin/load_brm
|
||||||
|
usr/bin/logReport.sh
|
||||||
|
usr/bin/mariadb-columnstore-start.sh
|
||||||
|
usr/bin/mariadb-columnstore-stop.sh
|
||||||
|
usr/bin/mariadb-command-line.sh
|
||||||
|
usr/bin/master-rep-columnstore.sh
|
||||||
|
usr/bin/mcs-savebrm.py
|
||||||
|
usr/bin/mcs-loadbrm.py
|
||||||
|
usr/bin/mcs-stop-controllernode.sh
|
||||||
|
usr/bin/mcsGetConfig
|
||||||
|
usr/bin/mcsSetConfig
|
||||||
|
usr/bin/mcs_module_installer.sh
|
||||||
|
usr/bin/mycnfUpgrade
|
||||||
|
usr/bin/os_detect.sh
|
||||||
|
usr/bin/post-mysql-install
|
||||||
|
usr/bin/post-mysqld-install
|
||||||
|
usr/bin/postConfigure
|
||||||
|
usr/bin/quick_installer_multi_server.sh
|
||||||
|
usr/bin/quick_installer_single_server.sh
|
||||||
|
usr/bin/remote_command.sh
|
||||||
|
usr/bin/remote_command_verify.sh
|
||||||
|
usr/bin/remote_scp_get.sh
|
||||||
|
usr/bin/remote_scp_put.sh
|
||||||
|
usr/bin/remotessh.exp
|
||||||
|
usr/bin/reset_locks
|
||||||
|
usr/bin/resourceReport.sh
|
||||||
|
usr/bin/rollback
|
||||||
|
usr/bin/rsync.sh
|
||||||
|
usr/bin/save_brm
|
||||||
|
usr/bin/slave-rep-columnstore.sh
|
||||||
|
usr/bin/smcat
|
||||||
|
usr/bin/smls
|
||||||
|
usr/bin/smput
|
||||||
|
usr/bin/smrm
|
||||||
|
usr/bin/startupTests.sh
|
||||||
|
usr/bin/viewtablelock
|
||||||
|
usr/bin/workernode
|
||||||
|
usr/lib/*/libalarmmanager.so
|
||||||
|
usr/lib/*/libbatchloader.so
|
||||||
|
usr/lib/*/libbrm.so
|
||||||
|
usr/lib/*/libcacheutils.so
|
||||||
|
usr/lib/*/libcloudio.so
|
||||||
|
usr/lib/*/libcommon.so
|
||||||
|
usr/lib/*/libcompress.so
|
||||||
|
usr/lib/*/libconfigcpp.so
|
||||||
|
usr/lib/*/libdataconvert.so
|
||||||
|
usr/lib/*/libddlcleanuputil.so
|
||||||
|
usr/lib/*/libddlpackage.so
|
||||||
|
usr/lib/*/libddlpackageproc.so
|
||||||
|
usr/lib/*/libdmlpackage.so
|
||||||
|
usr/lib/*/libdmlpackageproc.so
|
||||||
|
usr/lib/*/libexecplan.so
|
||||||
|
usr/lib/*/libfuncexp.so
|
||||||
|
usr/lib/*/libidbdatafile.so
|
||||||
|
usr/lib/*/libjoblist.so
|
||||||
|
usr/lib/*/libjoiner.so
|
||||||
|
usr/lib/*/liblibmysql_client.so
|
||||||
|
usr/lib/*/libloggingcpp.so
|
||||||
|
usr/lib/*/libmarias3.so
|
||||||
|
usr/lib/*/libmessageqcpp.so
|
||||||
|
usr/lib/*/liboamcpp.so
|
||||||
|
usr/lib/*/libquerystats.so
|
||||||
|
usr/lib/*/libquerytele.so
|
||||||
|
usr/lib/*/libregr.so
|
||||||
|
usr/lib/*/librowgroup.so
|
||||||
|
usr/lib/*/librwlock.so
|
||||||
|
usr/lib/*/libstoragemanager.so
|
||||||
|
usr/lib/*/libthreadpool.so
|
||||||
|
usr/lib/*/libthrift.so
|
||||||
|
usr/lib/*/libudfsdk.so
|
||||||
|
usr/lib/*/libwindowfunction.so
|
||||||
|
usr/lib/*/libwriteengine.so
|
||||||
|
usr/lib/*/libwriteengineclient.so
|
||||||
|
usr/lib/*/libwriteengineredistribute.so
|
||||||
|
usr/lib/mysql/plugin/ha_columnstore.so
|
||||||
|
usr/lib/mysql/plugin/libregr_mysql.so
|
||||||
|
usr/lib/mysql/plugin/libudf_mysql.so
|
||||||
|
usr/sbin/install_mcs_mysql.sh
|
||||||
|
usr/share/columnstore/calremoveuserpriority.sql
|
||||||
|
usr/share/columnstore/calsetuserpriority.sql
|
||||||
|
usr/share/columnstore/calshowprocesslist.sql
|
||||||
|
usr/share/columnstore/columnstoreAlias
|
||||||
|
usr/share/columnstore/columnstoreLogRotate
|
||||||
|
usr/share/columnstore/columnstoreSyslog
|
||||||
|
usr/share/columnstore/columnstoreSyslog-ng
|
||||||
|
usr/share/columnstore/columnstoreSyslog7
|
||||||
|
usr/share/columnstore/columnstore_functions
|
||||||
|
usr/share/columnstore/columnstore_info.sql
|
||||||
|
usr/share/columnstore/dumpcat_mysql.sql
|
||||||
|
usr/share/columnstore/gitversionEngine
|
||||||
|
usr/share/columnstore/mariadb-columnstore.service
|
||||||
|
usr/share/columnstore/mcs-controllernode.service
|
||||||
|
usr/share/columnstore/mcs-ddlproc.service
|
||||||
|
usr/share/columnstore/mcs-dmlproc.service
|
||||||
|
usr/share/columnstore/mcs-exemgr.service
|
||||||
|
usr/share/columnstore/mcs-loadbrm.service
|
||||||
|
usr/share/columnstore/mcs-primproc.service
|
||||||
|
usr/share/columnstore/mcs-storagemanager.service
|
||||||
|
usr/share/columnstore/mcs-workernode.service
|
||||||
|
usr/share/columnstore/mcs-writeengineserver.service
|
||||||
|
usr/share/columnstore/mcstest-001.sh
|
||||||
|
usr/share/columnstore/mcstest-002.sh
|
||||||
|
usr/share/columnstore/mcstest-003.sh
|
||||||
|
usr/share/columnstore/mcstest-004.sh
|
||||||
|
usr/share/columnstore/myCnf-exclude-args.text
|
||||||
|
usr/share/columnstore/myCnf-include-args.text
|
||||||
|
usr/share/columnstore/releasenum
|
||||||
|
usr/share/columnstore/syscatalog_mysql.sql
|
||||||
|
var/lib/columnstore/local/module
|
8
debian/mariadb-plugin-columnstore.postinst
vendored
Normal file
8
debian/mariadb-plugin-columnstore.postinst
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
# Install ColumnStore
|
||||||
|
columnstore-post-install install
|
||||||
|
|
||||||
|
#DEBHELPER#
|
24
debian/mariadb-plugin-columnstore.postrm
vendored
Normal file
24
debian/mariadb-plugin-columnstore.postrm
vendored
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
if [ "$1" = "purge" ]; then
|
||||||
|
rm -rf /var/lib/columnstore
|
||||||
|
rm -rf /etc/columnstore
|
||||||
|
rm -f /etc/mysql/mariadb.conf.d/columnstore.cnf.rpmsave
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Automatically restart MariaDB after ColumnStore plugin has been removed
|
||||||
|
case "$1" in
|
||||||
|
purge|remove|disappear)
|
||||||
|
if [ -d /run/systemd/system ]; then
|
||||||
|
# If systemd
|
||||||
|
deb-systemd-invoke restart mariadb.service >/dev/null
|
||||||
|
elif [ -x "/etc/init.d/mariadb" ]; then
|
||||||
|
# Fall-back to SysV init
|
||||||
|
invoke-rc.d mariadb restart || exit $?
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
|
#DEBHELPER#
|
8
debian/mariadb-plugin-columnstore.prerm
vendored
Normal file
8
debian/mariadb-plugin-columnstore.prerm
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -e
|
||||||
|
|
||||||
|
columnstore-pre-uninstall
|
||||||
|
|
||||||
|
|
||||||
|
#DEBHELPER#
|
1
debian/mariadb-plugin-columnstore.triggers
vendored
Normal file
1
debian/mariadb-plugin-columnstore.triggers
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
activate-noawait ldconfig
|
Loading…
x
Reference in New Issue
Block a user