Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- set -e
- set +x
- VDOCS_HOME_DIR=$VDOCS_HOME
- REPORT_SERVER=`echo $REPORT_SERVER | xargs`
- SSH_USERNAME=`echo $SSH_USERNAME | xargs` # Trim whitespace
- SSH_CONNECTION="ssh -q -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
- echo "VDOCS_HOME_DIR: $VDOCS_HOME_DIR"
- echo "REPORT_SERVER: $REPORT_SERVER"
- echo "SSH_USERNAME: $SSH_USERNAME"
- echo ""
- echo "-------------------------------------------------------------------"
- echo "Determining SSH user for $REPORT_SERVER"
- echo "-------------------------------------------------------------------"
- echo ""
- set +e
- function test_ssh(){
- # Takes server as first parameter
- local server=$1
- # Tries with list of users
- for user in $SSH_USERNAME mmsdev mmsvdocs
- do
- echo -n "Trying with user $user..."
- $SSH_CONNECTION $user@$server "exit"
- if [[ $? -eq 0 ]]; then
- SSH_USERNAME="$user"
- echo "[SUCCESS]"
- # Return first suitable user found
- return $user
- continue
- else
- echo "[FAILED]"
- fi
- done
- # No good users found
- return failure
- }
- # Loops over all report servers
- for server in $REPORT_SERVER
- do
- # Test if we can log in
- username=$(test_ssh $server)
- [ $username == "failure"] && echo "No suitable users for $server" && continue
- # If we can login, keep going
- echo "Doing stuff for $server with $username"
- done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement