Skip to content

Instantly share code, notes, and snippets.

@mpenick
Last active May 31, 2016 22:37
Show Gist options
  • Select an option

  • Save mpenick/b0af476dd79dcb2e297c to your computer and use it in GitHub Desktop.

Select an option

Save mpenick/b0af476dd79dcb2e297c to your computer and use it in GitHub Desktop.
#!/bin/bash
if [ "$#" -ne 2 ]; then
echo "Usage: $0 <cpp-driver-dse-branch> <libuv-version>"
exit 1
fi
if [ -e /etc/redhat-release ]; then
for version in $(ls | sed -rne 's/^libuv-(debuginfo-|devel-)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e libuv-$version*.rpm ]; then
mkdir -p libuv-$version
mv libuv-*$version*.rpm libuv-$version
fi
done
for version in $(ls | sed -rne 's/^dse-cpp-driver-(debuginfo-|devel-)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e dse-cpp-driver-$version*.rpm ]; then
mkdir -p dse-cpp-driver-$version
mv dse-cpp-driver-*$version*.rpm dse-cpp-driver-$version
fi
done
else
for version in $(ls | sed -rne 's/^libuv(_|-dbg_|-dev_)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e libuv_$version*.deb ]; then
mkdir -p libuv-$version
mv libuv*$version*.deb libuv-$version
fi
done
for version in $(ls | sed -rne 's/^dse-cpp-driver(_|-dbg_|-dev_)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e dse-cpp-driver_$version*.deb ]; then
mkdir -p dse-cpp-driver-$version
mv dse-cpp-driver*$version*.deb dse-cpp-driver-$version
fi
done
fi
rm -rf cpp-driver-dse
git clone --depth 1 --branch $1 git@github.com:datastax/cpp-driver-dse.git cpp-driver-dse
pushd cpp-driver-dse
git submodule update --init --recursive
popd
if [ ! -d "libuv-$2" ]; then
rm -rf libuv-packaging
git clone --depth 1 --branch master https://github.com/mpenick/libuv-packaging.git libuv-packaging
fi
if [ -e /etc/redhat-release ]; then
sudo yum update
INSTALLED_LIBUV_VERSION=`rpm -qa --queryformat '%{version}' libuv`
if [ ! -d "libuv-$2" ]; then
pushd libuv-packaging
./build_rpm.sh $2
cp build/RPMS/x86_64/libuv-*.rpm ../
popd
else
echo "Not rebuilding libuv-$2 because it already exist."
fi
if [ -z "$INSTALLED_LIBUV_VERSION" ] || [ "$INSTALLED_LIBUV_VERSION" != "$2" ]; then
echo "Installing libuv-$2..."
if [ -d "libuv-$2" ]; then
sudo rpm -U "libuv-$2"/libuv-*.rpm
else
sudo rpm -U libuv-*.rpm
fi
if [ $? -ne 0 ]; then
echo "Failed to install libuv-$2."
exit 1
fi
fi
pushd cpp-driver-dse/packaging
./build_rpm.sh
cp build/RPMS/x86_64/dse-cpp-driver-*.rpm ../..
popd
else
#sudo apt-get update
#sudo apt-get upgrade
INSTALLED_LIBUV_VERSION=`dpkg -s libuv | grep Version | awk '{print $2}' | cut -d- -f1`
if [ ! -d "libuv-$2" ]; then
pushd libuv-packaging
./build_deb.sh $2
cp build/libuv*.deb ../
popd
else
echo "Not rebuilding libuv-$2 because it already exist."
fi
if [ -z "$INSTALLED_LIBUV_VERSION" ] || [ "$INSTALLED_LIBUV_VERSION" != "$2" ]; then
echo "Installing libuv-$2..."
if [ -d "libuv-$2" ]; then
sudo dpkg -i "libuv-$2"/libuv*.deb
else
sudo dpkg -i libuv*.deb
fi
if [ $? -ne 0 ]; then
echo "Failed to install libuv-$2."
exit 1
fi
fi
pushd cpp-driver-dse/packaging
./build_deb.sh
cp build/dse-cpp-driver*.deb ../..
popd
fi
#!/bin/bash
if [ "$#" -ne 2 ]; then
echo "Usage: $0 <cpp-driver-branch> <libuv-version>"
exit 1
fi
if [ -e /etc/redhat-release ]; then
for version in $(ls | sed -rne 's/^libuv-(debuginfo-|devel-)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e libuv-$version*.rpm ]; then
mkdir -p libuv-$version
mv libuv-*$version*.rpm libuv-$version
fi
done
for version in $(ls | sed -rne 's/^cassandra-cpp-driver-(debuginfo-|devel-)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e cassandra-cpp-driver-$version*.rpm ]; then
mkdir -p cassandra-cpp-driver-$version
mv cassandra-cpp-driver-*$version*.rpm cassandra-cpp-driver-$version
fi
done
else
for version in $(ls | sed -rne 's/^libuv(_|-dbg_|-dev_)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e libuv_$version*.deb ]; then
mkdir -p libuv-$version
mv libuv*$version*.deb libuv-$version
fi
done
for version in $(ls | sed -rne 's/^cassandra-cpp-driver(_|-dbg_|-dev_)?([0-9a-z.]+)-.*/\2/p'); do
if [ -e cassandra-cpp-driver_$version*.deb ]; then
mkdir -p cassandra-cpp-driver-$version
mv cassandra-cpp-driver*$version*.deb cassandra-cpp-driver-$version
fi
done
fi
rm -rf cpp-driver
git clone --depth 1 --branch $1 https://github.com/datastax/cpp-driver.git cpp-driver
if [ ! -d "libuv-$2" ]; then
rm -rf libuv-packaging
git clone --depth 1 --branch master https://github.com/mpenick/libuv-packaging.git libuv-packaging
fi
if [ -e /etc/redhat-release ]; then
sudo yum update
INSTALLED_LIBUV_VERSION=`rpm -qa --queryformat '%{version}' libuv`
if [ ! -d "libuv-$2" ]; then
pushd libuv-packaging
./build_rpm.sh $2
cp build/RPMS/x86_64/libuv-*.rpm ../
popd
else
echo "Not rebuilding libuv-$2 because it already exist."
fi
if [ -z "$INSTALLED_LIBUV_VERSION" ] || [ "$INSTALLED_LIBUV_VERSION" != "$2" ]; then
echo "Installing libuv-$2..."
if [ -d "libuv-$2" ]; then
sudo rpm -U "libuv-$2"/libuv-*.rpm
else
sudo rpm -U libuv-*.rpm
fi
if [ $? -ne 0 ]; then
echo "Failed to install libuv-$2."
exit 1
fi
fi
pushd cpp-driver/packaging
./build_rpm.sh
cp build/RPMS/x86_64/cassandra-cpp-driver-*.rpm ../..
popd
else
#sudo apt-get update
#sudo apt-get upgrade
INSTALLED_LIBUV_VERSION=`dpkg -s libuv | grep Version | awk '{print $2}' | cut -d- -f1`
if [ ! -d "libuv-$2" ]; then
pushd libuv-packaging
./build_deb.sh $2
cp build/libuv*.deb ../
popd
else
echo "Not rebuilding libuv-$2 because it already exist."
fi
if [ -z "$INSTALLED_LIBUV_VERSION" ] || [ "$INSTALLED_LIBUV_VERSION" != "$2" ]; then
echo "Installing libuv-$2..."
if [ -d "libuv-$2" ]; then
sudo dpkg -i "libuv-$2"/libuv*.deb
else
sudo dpkg -i libuv*.deb
fi
if [ $? -ne 0 ]; then
echo "Failed to install libuv-$2."
exit 1
fi
fi
pushd cpp-driver/packaging
./build_deb.sh
cp build/cassandra-cpp-driver*.deb ../..
popd
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment