summaryrefslogtreecommitdiffstats
path: root/helper_scrips/rpm_download_install.sh
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/rpm_download_install.sh
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/rpm_download_install.sh')
-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