2020-04-30 16:13:38 -04:00
|
|
|
#! /bin/bash
|
|
|
|
|
|
|
|
### usage sudo ./generate_rpms [open source version] [build release #]
|
|
|
|
|
|
|
|
version=$1
|
|
|
|
release=$2
|
|
|
|
arch=$(uname -m)
|
2020-05-28 01:35:42 -04:00
|
|
|
dist=el$(rpm -q --queryformat '%{VERSION}' centos-release | cut -d. -f1)
|
2020-04-30 16:13:38 -04:00
|
|
|
|
|
|
|
if [ "$arch" != "aarch64" ] || [ "$arch" != "x86_64" ]; then
|
|
|
|
echo "This script is only valid and tested for aarch64 and x86_64 architectures. You are trying to use: $arch"
|
|
|
|
fi
|
|
|
|
if [ "$dist" != "el7" ] || [ "$dist" != "el8" ]; then
|
|
|
|
echo "This script is only valid and tested for centos7 and centos8 builds. You are trying to use: $dist"
|
|
|
|
fi
|
|
|
|
|
|
|
|
# remove any old rpm packages
|
|
|
|
rm $PWD/rpm_files_generated/keydb*
|
|
|
|
|
|
|
|
# generate empty directories that github would otherwise delete (avoids .gitkeep in directory)
|
|
|
|
mkdir $PWD/centos7_rpm_build/keydb_build/keydb_rpm/usr/bin
|
|
|
|
mkdir $PWD/centos7_rpm_build/keydb_build/keydb_rpm/usr/lib64/redis/modules
|
|
|
|
mkdir $PWD/centos7_rpm_build/keydb_build/keydb_rpm/var/lib/keydb
|
|
|
|
mkdir $PWD/centos7_rpm_build/keydb_build/keydb_rpm/var/log/keydb
|
|
|
|
|
|
|
|
# move binaries to bin
|
|
|
|
rm $PWD/keydb_build/keydb_rpm/usr/bin/*
|
|
|
|
cp $PWD/../../src/keydb-* $PWD/keydb_build/keydb_rpm/usr/bin/
|
|
|
|
|
|
|
|
# update spec file with build info
|
|
|
|
sed -i '2d' $PWD/keydb_build/keydb.spec
|
|
|
|
sed -i -E "1a\Version : $version" $PWD/keydb_build/keydb.spec
|
|
|
|
sed -i '3d' $PWD/keydb_build/keydb.spec
|
|
|
|
sed -i -E "2a\Release : $release%{?dist}" $PWD/keydb_build/keydb.spec
|
|
|
|
|
|
|
|
# yum install -y scl-utils centos-release-scl rpm-build
|
|
|
|
mkdir -p /root/rpmbuild/BUILDROOT/keydb-$version5-$release.$dist.$arch
|
|
|
|
cp -r ./keydb_build/keydb_rpm/* /root/rpmbuild/BUILDROOT/keydb-$version5-$release.$dist.$arch/
|
|
|
|
rpmbuild -bb /rpm_build/keydb.spec
|
|
|
|
mv /root/rpmbuild/RPMS/$arch/* .$PWD/rpm_files_generated
|
|
|
|
|
|
|
|
exit
|