fix: rollback software package
This commit is contained in:
@@ -2,8 +2,15 @@
|
|||||||
|
|
||||||
filename="$1"
|
filename="$1"
|
||||||
neType="$2"
|
neType="$2"
|
||||||
|
duration=180
|
||||||
|
expectBin=/usr/bin/expect
|
||||||
extension=$(basename "${1}" | awk -F . '{print $NF}')
|
extension=$(basename "${1}" | awk -F . '{print $NF}')
|
||||||
|
|
||||||
|
if [ ! -f ${expectBin} ]; then
|
||||||
|
echo "Please install software expect first"
|
||||||
|
exit 99
|
||||||
|
fi
|
||||||
|
|
||||||
case "${extension}" in
|
case "${extension}" in
|
||||||
deb)
|
deb)
|
||||||
if [ ${neType} == "OMC" ]; then
|
if [ ${neType} == "OMC" ]; then
|
||||||
@@ -11,7 +18,7 @@ case "${extension}" in
|
|||||||
fi
|
fi
|
||||||
expect <<EOF
|
expect <<EOF
|
||||||
spawn dpkg -i --force-all "$filename"
|
spawn dpkg -i --force-all "$filename"
|
||||||
set timeout 180
|
set timeout ${duration}
|
||||||
expect {
|
expect {
|
||||||
"y/n" { send "n\n"; exp_continue }
|
"y/n" { send "n\n"; exp_continue }
|
||||||
}
|
}
|
||||||
@@ -23,7 +30,7 @@ EOF
|
|||||||
fi
|
fi
|
||||||
expect <<EOF
|
expect <<EOF
|
||||||
spawn rpm -Uvh --oldpackage "$filename"
|
spawn rpm -Uvh --oldpackage "$filename"
|
||||||
set timeout 180
|
set timeout ${duration}
|
||||||
expect {
|
expect {
|
||||||
"y/n" { send "n\n"; exp_continue }
|
"y/n" { send "n\n"; exp_continue }
|
||||||
}
|
}
|
||||||
@@ -32,6 +39,7 @@ EOF
|
|||||||
*)
|
*)
|
||||||
|
|
||||||
echo "The file does not have a .deb or .rpm extension"
|
echo "The file does not have a .deb or .rpm extension"
|
||||||
exit 1
|
exit 100
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user