1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-11-03 17:13:17 +03:00
Files
mariadb-columnstore-engine/oam/install_scripts/remote_scp_put.sh
2016-01-06 14:08:59 -06:00

55 lines
1.7 KiB
Bash

#!/usr/bin/expect
#
# $Id: remote_commend.sh 421 2007-04-05 15:46:55Z dhill $
#
# Remote command execution script to another server
# Argument 1 - Remote Server Host Name or IP address
# Argument 2 - Remote Server root password
# Argument 3 - Command
set timeout 30
set USERNAME $env(USER)"@"
set SERVER [lindex $argv 0]
set PASSWORD [lindex $argv 1]
set FILE [lindex $argv 2]
set DEBUG [lindex $argv 3]
log_user $DEBUG
spawn -noecho /bin/bash
if { $PASSWORD == "ssh" } {
set PASSWORD ""
}
#
# send command
#
expect -re "# "
send "scp $FILE $USERNAME$SERVER:$FILE\n"
expect {
-re "authenticity" { send "yes\n"
expect {
-re "word: " { send "$PASSWORD\n" }
-re "passphrase" { send "$PASSWORD\n" }
}
}
-re "service not known" { send_user "FAILED: Invalid Host\n" ; exit 1 }
-re "Connection refused" { send_user "FAILED: Connection refused\n" ; exit 1 }
-re "Connection timed out" { send_user "FAILED: Connection timed out\n" ; exit 1 }
-re "lost connection" { send_user "FAILED: Connection refused\n" ; exit 1 }
-re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 }
-re "word: " { send "$PASSWORD\n" }
-re "passphrase" { send "$PASSWORD\n" }
-re "WARNING:" { send "rm -f /root/.ssh/known_hosts" ; exit 1 }
}
expect {
-re "100%" { send_user "DONE\n" }
-re "scp:" { send_user "FAILED\n" ; exit 1 }
-re "Permission denied" { send_user "FAILED: Invalid password\n" ; exit 1 }
-re "No such file or directory" { send_user "FAILED: Invalid file\n" ; exit 1 }
-re "Connection refused" { send_user "FAILED: Connection refused\n" ; exit 1 }
-re "Connection closed" { send_user "ERROR: Connection closed\n" ; exit 1 }
}
#sleep to make sure it's finished
sleep 5
exit 0