mirror of
https://github.com/scylladb/scylladb.git
synced 2026-06-06 06:53:12 +00:00
We have a script in tree that fixes the schema for distributed system tables, like tracing, should they change their schema. We use it all the time but unfortunately it is not distributed with the scylla package, which makes it using it harder (we want to do this in the server, but consistent updates will take a while). One of the problems with the script today that makes distributing it harder is that it uses the python3 cassandra driver, that we don't want to have as a server dependency. But now with the relocatable packages in place there is no reaso not to just add it. [avi: adjust tools/toolchain/image to point to a new image with python3-cassandra-driver] Signed-off-by: Glauber Costa <glauber@scylladb.com> Message-Id: <20190603162447.24215-1-glauber@scylladb.com>
111 lines
3.2 KiB
Bash
Executable File
111 lines
3.2 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# This file is open source software, licensed to you under the terms
|
|
# of the Apache License, Version 2.0 (the "License"). See the NOTICE file
|
|
# distributed with this work for additional information regarding copyright
|
|
# ownership. You may not use this file except in compliance with the License.
|
|
#
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing,
|
|
# software distributed under the License is distributed on an
|
|
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
# KIND, either express or implied. See the License for the
|
|
# specific language governing permissions and limitations
|
|
# under the License.
|
|
#
|
|
|
|
. /etc/os-release
|
|
|
|
bash seastar/install-dependencies.sh
|
|
|
|
debian_base_packages=(
|
|
python3-pyparsing
|
|
libsnappy-dev
|
|
libjsoncpp-dev
|
|
scylla-libthrift010-dev
|
|
scylla-antlr35-c++-dev
|
|
thrift-compiler
|
|
git
|
|
pigz
|
|
)
|
|
|
|
fedora_packages=(
|
|
yaml-cpp-devel
|
|
thrift-devel
|
|
antlr3-tool
|
|
antlr3-C++-devel
|
|
jsoncpp-devel
|
|
snappy-devel
|
|
systemd-devel
|
|
git
|
|
python
|
|
sudo
|
|
java-1.8.0-openjdk-headless
|
|
ant
|
|
ant-junit
|
|
maven
|
|
pystache
|
|
patchelf
|
|
python3
|
|
python3-PyYAML
|
|
python3-pyudev
|
|
python3-setuptools
|
|
python3-urwid
|
|
python3-pyparsing
|
|
python3-requests
|
|
python3-pyudev
|
|
python3-setuptools
|
|
python3-magic
|
|
python3-psutil
|
|
python3-cassandra-driver
|
|
dnf-utils
|
|
pigz
|
|
net-tools
|
|
tar
|
|
gzip
|
|
gawk
|
|
util-linux
|
|
ethtool
|
|
hwloc
|
|
)
|
|
|
|
centos_packages=(
|
|
yaml-cpp-devel
|
|
thrift-devel
|
|
scylla-antlr35-tool
|
|
scylla-antlr35-C++-devel
|
|
jsoncpp-devel snappy-devel
|
|
scylla-boost163-static
|
|
scylla-python34-pyparsing20
|
|
systemd-devel
|
|
pigz
|
|
)
|
|
|
|
if [ "$ID" = "ubuntu" ] || [ "$ID" = "debian" ]; then
|
|
apt-get -y install "${debian_base_packages[@]}"
|
|
if [ "$VERSION_ID" = "8" ]; then
|
|
apt-get -y install libsystemd-dev scylla-antlr35 libyaml-cpp-dev
|
|
elif [ "$VERSION_ID" = "14.04" ]; then
|
|
apt-get -y install scylla-antlr35 libyaml-cpp-dev
|
|
elif [ "$VERSION_ID" = "9" ]; then
|
|
apt-get -y install libsystemd-dev antlr3 scylla-libyaml-cpp05-dev
|
|
else
|
|
apt-get -y install libsystemd-dev antlr3 libyaml-cpp-dev
|
|
fi
|
|
echo -e "Configure example:\n\t./configure.py --enable-dpdk --mode=release --static-thrift --static-boost --static-yaml-cpp --compiler=/opt/scylladb/bin/g++-7 --cflags=\"-I/opt/scylladb/include -L/opt/scylladb/lib/x86-linux-gnu/\" --ldflags=\"-Wl,-rpath=/opt/scylladb/lib\""
|
|
elif [ "$ID" = "fedora" ]; then
|
|
if rpm -q --quiet yum-utils; then
|
|
echo
|
|
echo "This script will install dnf-utils package, witch will conflict with currently installed package: yum-utils"
|
|
echo "Please remove the package and try to run this script again."
|
|
exit 1
|
|
fi
|
|
yum install -y "${fedora_packages[@]}"
|
|
elif [ "$ID" = "centos" ]; then
|
|
yum install -y "${centos_packages[@]}"
|
|
echo -e "Configure example:\n\tpython3.4 ./configure.py --enable-dpdk --mode=release --static-boost --compiler=/opt/scylladb/bin/g++-7.3 --python python3.4 --ldflag=-Wl,-rpath=/opt/scylladb/lib64 --cflags=-I/opt/scylladb/include --with-antlr3=/opt/scylladb/bin/antlr3"
|
|
fi
|