#!/bin/bash
# Usage: keygen.sh [ssh private key] [Instructor IP]
[[ $# ==  2 ]] || { echo "USAGE: $0 [ssh private key] [Instructor IP]"; exit 1; }
[[ -f $1 ]] || { echo "Private key not found"; exit 1; }

key=`basename $1`
dir=`dirname $0`

# scp private key to instructor
scp -o "StrictHostKeyChecking no" -i $1 $1 ubuntu@$2:/home/ubuntu/

# generage script file
cat <<EOF > $dir/genppk.sh
#!/bin/bash

sudo apt update
sudo apt-get install putty-tools
puttygen $key -o ${key%.pem}.ppk -O private
EOF
chmod +x $dir/genppk.sh

# scp script file to instructor
scp -o "StrictHostKeyChecking no" -i $1 $dir/genppk.sh ubuntu@$2:/home/ubuntu/

# run script file
ssh -o "StrictHostKeyChecking no" -i $1 ubuntu@$2 "bash /home/ubuntu/genppk.sh"

# copy ppk file to local
scp -o "StrictHostKeyChecking no" -i $1 ubuntu@$2:/home/ubuntu/${key%.pem}.ppk .

# remove script file
rm $dir/genppk.sh


