summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tsg-rpm-script/download_last_TSG-OS.sh16
-rw-r--r--tsg-rpm-script/tsg_rpm.sh79
2 files changed, 95 insertions, 0 deletions
diff --git a/tsg-rpm-script/download_last_TSG-OS.sh b/tsg-rpm-script/download_last_TSG-OS.sh
new file mode 100644
index 0000000..dda3057
--- /dev/null
+++ b/tsg-rpm-script/download_last_TSG-OS.sh
@@ -0,0 +1,16 @@
+#!/bin/bash
+
+BASE_URL="https://repo.geedge.net/pulp/content/install/rc/tsg-os-images/"
+#BASE_URL="https://repo.geedge.net/pulp/content/install/testing/tsg-os-images/"
+
+OS_TYPE="NPB"
+URI_ARRAY=`curl --user luwenpeng:LWP@repo ${BASE_URL} | grep href | awk -F = '{print $2}' | awk -F '"' '{print $2}' | sort -n | grep ${OS_TYPE} | tail -n 1`
+
+echo "======================================"
+echo "Last TSG-OS: ${URI_ARRAY}"
+echo "======================================"
+
+for uri in ${URI_ARRAY[@]}
+do
+ wget --http-user=luwenpeng --http-password=LWP@repo -c ${BASE_URL}${uri} &
+done
diff --git a/tsg-rpm-script/tsg_rpm.sh b/tsg-rpm-script/tsg_rpm.sh
new file mode 100644
index 0000000..78979c5
--- /dev/null
+++ b/tsg-rpm-script/tsg_rpm.sh
@@ -0,0 +1,79 @@
+#!/bin/bash
+
+check_rpm_version()
+{
+ rpm=$1
+ rpmdb=$2
+ printf "%-35s\t" "${rpm}"
+ is_install=`cat ${rpmdb} | grep ${rpm} | wc -l`
+ if [ $is_install -eq 1 ]; then
+ printf "\e[32m[install]\e[0m\n"
+ else
+ printf "\e[31m[uninstall]\e[0m\n"
+ fi
+}
+
+install_rpm_debugino()
+{
+ printf "\e[31m debuginfo-install -y %-35s\e[0m\n" "${rpm}"
+ debuginfo-install -y $1
+}
+
+verify_debuginfo_version()
+{
+ rpm=$1
+ rpmdb=$2
+ printf "%-35s debuginfo\t" "${rpm}"
+ version=`echo ${rpm} | awk -F "-[0-9]" '{print $2}'`
+ is_match=`cat ${rpmdb} | grep ${version} | wc -l`
+ if [ ${is_match} -eq 2 ]; then
+ printf "\e[32m[correct]\e[0m\n"
+ else
+ printf "\e[31m[incorrect]\e[0m\n"
+ fi
+}
+
+usage()
+{
+ printf " -c Check whether the rpm specified by tsg-os is installed\n"
+ printf " -i Install debuginfo corresponding to rpm\n"
+ printf " -v Verify that the version of debuginfo installed is correct\n"
+ printf " -h Help\n"
+ exit 0
+}
+
+RPM_DB=".tmp.rpm.db"
+RPM_VERSION_FILE="rpm_version.yml"
+if [ ! -f "${RPM_VERSION_FILE}" ]; then
+ echo "Please download last ${RPM_VERSION_FILE} form https://git.mesalab.cn/tsg/tsg-os-buildimage/"
+ exit 0
+fi
+
+if [ "$1" == "" ]; then
+ usage
+fi
+
+opt_type="h"
+while getopts civh opt
+do
+ case $opt in
+ c) opt_type="c" ;;
+ i) opt_type="i" ;;
+ v) opt_type="v" ;;
+ h|?) usage ;;
+ esac
+done
+
+rpm -qa >> ${RPM_DB}
+RPM_ARRAY=`cat ${RPM_VERSION_FILE} | grep ":" | grep "[0-9]" | awk -F ":" '{print $2}' | sort`
+for rpm in ${RPM_ARRAY}
+do
+ if [ $opt_type == "c" ]; then
+ check_rpm_version ${rpm} ${RPM_DB}
+ elif [ $opt_type == "i" ]; then
+ install_rpm_debugino ${rpm}
+ elif [ $opt_type == "v" ]; then
+ verify_debuginfo_version ${rpm} ${RPM_DB}
+ fi
+done
+rm -rf ${RPM_DB}