summaryrefslogtreecommitdiffstats
path: root/helper_scrips
diff options
context:
space:
mode:
authorRaghavendra Bhat <raghavendrabhat@gluster.com>2011-10-10 14:51:39 +0530
committerRaghavendra Bhat <raghavendrabhat@gluster.com>2011-10-10 14:51:39 +0530
commitb535262e2e4105e67df260465851c8a9bc6ed5ae (patch)
treeb891365a54c6e3150df20c5d3a3a8fefeba61fdd /helper_scrips
parent0fecd1f748e578cb247e10e81bec352c8cf97448 (diff)
helper_scripts/rpm_download_install: script which downloads and installs glusterfs rpms
This script not only installs the qa releases but also installs the main releases also. Can be even upgraded by giving option "yes".
Diffstat (limited to 'helper_scrips')
-rwxr-xr-xhelper_scrips/rpm_download_install.sh152
1 files changed, 152 insertions, 0 deletions
diff --git a/helper_scrips/rpm_download_install.sh b/helper_scrips/rpm_download_install.sh
new file mode 100755
index 0000000..4bbbea5
--- /dev/null
+++ b/helper_scrips/rpm_download_install.sh
@@ -0,0 +1,152 @@
+#!/bin/bash
+
+#set -x;
+
+function _init ()
+{
+ # echo $0;
+ # echo $#;
+ # echo $1;
+ set -u;
+ if [ $# -lt 1 ]; then
+ echo "usage: download_and_install <glusterfs-version> [upgrade decision]";
+ exit 1;
+ fi
+
+ version=$1;
+ echo $version;
+ echo $version | grep "glusterfs" 2>/dev/null 1>/dev/null;
+ if [ $? -ne 0 ]; then
+ echo "given argument is not glusterfs";
+ exit 1;
+ fi
+
+ version_number=$(echo $version | cut -f 2 -d "-");
+ check_if_qa_release $version;
+ op_ret=$?;
+
+ if [ $op_ret -eq 0 ]; then
+ download_address="http://bits.gluster.com/pub/gluster/glusterfs/";
+ else
+ echo $version | grep "3.2" 2>/dev/null 1>/dev/null;
+ if [ $? -eq 0 ]; then
+ version_number=$(echo $version | cut -f 2 -d "-");
+ download_address="http://download.gluster.com/pub/gluster/glusterfs/3.2/$version_number/CentOS/";
+ else
+ grep "3.1" $version 2>/dev/null 1>/dev/null;
+ echo "haha yes"
+ if [ $? -eq 0 ]; then
+ version_number=$(echo $version | cut -f 2 -d "-");
+ download_address="http://download.gluster.com/pub/gluster/glusterfs/3.1/$version_number/CentOS/";
+ else
+ grep "3.0" $version 2>/dev/null 1>/dev/null;
+ if [ $? -eq 0 ]; then
+ version_number=$(cut -f 2 -d "-" $version);
+ download_address="http://download.gluster.com/pub/gluster/glusterfs/3.0/$version_number/CentOS/";
+ fi
+ fi
+ fi
+ fi
+
+ echo "KK: $download_address"
+# ls -l "$version".tar.gz 2>/dev/null 1>/dev/null
+# if [ $? -ne 0 ]; then
+}
+
+function check_if_qa_release ()
+{
+ glusterfs_version=$1;
+
+ echo $glusterfs_version | grep "qa" 2>/dev/null 1>/dev/null;
+ ret=$?;
+
+ return $ret;
+}
+
+function download_rpms ()
+{
+ address=$1;
+ local ret;
+
+ mkdir $PWD/rpms/$version_number;
+
+ cd $PWD/rpms/$version_number;
+
+ echo $version_number | grep "3.2";
+ is_32=$?;
+ if [ $is_32 -ne 0 ]; then
+ echo $version_number | grep "3.3";
+ is_32=$?;
+ fi
+
+ check_if_qa_release $version;
+ ret=$?
+
+ if [$ret -eq 0 ]; then
+ wget $address/$version_number/x86_64/glusterfs-core-$version_number-1.x86_64.rpm;
+ wget $address/$version_number/x86_64/glusterfs-debuginfo-$version_number-1.x86_64.rpm;
+ wget $address/$version_number/x86_64/glusterfs-fuse-$version_number-1.x86_64.rpm;
+ if [ $is_32 -eq 0 ]; then
+ wget $address/$version_number/x86_64/glusterfs-geo-replication-$version_number-1.x86_64.rpm;
+ echo "3.2 version";
+ fi
+ else
+ wget $address/glusterfs-core-$version_number-1.x86_64.rpm;
+ wget $address/glusterfs-debuginfo-$version_number-1.x86_64.rpm;
+ wget $address/glusterfs-fuse-$version_number-1.x86_64.rpm;
+ if [ $is_32 -eq 0 ]; then
+ wget $address/glusterfs-geo-replication-$version_number-1.x86_64.rpm;
+ echo "3.2 version";
+ fi
+ fi
+}
+
+
+function install_or_upgrade ()
+{
+ cd /root/rpms/$version_number;
+ if [ $upgrade != "yes" ]; then
+ for i in $(ls)
+ do
+ rpm -ivh $i;
+ done
+ else
+ for i in $(ls)
+ do
+ rpm -Uvh $i;
+ done
+ fi
+
+ ret=$?;
+ cd /root;
+
+ ldconfig;
+ return $ret;
+}
+
+main ()
+{
+ echo $download_address;
+ download_rpms $download_address;
+
+ upgrade="no";
+ if [ $# -eq 2 ]; then
+ upgrade=$2;
+ fi
+
+ if [ $upgrade != "yes" ] && [ $upgrade != "no" ]; then
+ echo "Invalid upgrade decision $upgrade";
+ rm -rf /root/rpms/$version_number;
+ exit 1;
+ fi
+
+ install_or_upgrade $upgrade;
+ ret=$?;
+ if [ $ret -ne 0 ]; then
+ rm -rf /root/rpms/$version_number;
+ fi
+}
+
+_init "$@" && main "$@"
+
+ \ No newline at end of file