Add new file
This commit is contained in:
55
small_useful_scripts/tunnel2jupytera.sh
Normal file
55
small_useful_scripts/tunnel2jupytera.sh
Normal file
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
|
||||
def_user=$USER
|
||||
def_addr="jupytera"
|
||||
def_port="5000"
|
||||
def_debug=false
|
||||
def_node=false
|
||||
|
||||
function show_usage {
|
||||
echo "usage: $0 [-u USER] [-p PORT] [-s]"
|
||||
echo " -u, --user USER set user (default: ${def_user})"
|
||||
echo " -p, --port PORT set local port (default: ${def_port})"
|
||||
echo " -s, --staging tunnel to jupytera staging (default: jupytera production)"
|
||||
echo " -n, --node node at which jupyter is running"
|
||||
echo " -d, --debug turn on debug mode (default: off)"
|
||||
echo " -h, --help, -? show this help"
|
||||
}
|
||||
|
||||
user=${def_user}
|
||||
addr=${def_addr}
|
||||
port=${def_port}
|
||||
debug=${def_debug}
|
||||
node=${def_node}
|
||||
|
||||
while [[ "$#" -gt 0 ]]; do
|
||||
case $1 in
|
||||
-u|--user) user="$2" ; shift ;;
|
||||
-p|--port) port="$2" ; shift ;;
|
||||
-n|--node) node="$2" ; shift ;;
|
||||
-s|--staging) addr="jupytera-staging" ;;
|
||||
-d|--debug) debug=true ;;
|
||||
-h|--help|-\?) show_usage ; exit ;;
|
||||
*) echo "unknown argument: $1" ; show_usage ; exit 1 ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
|
||||
echo "Creating tunnel to ${addr}.psi.ch on https://localhost:${port}/ ..."
|
||||
echo
|
||||
echo "Username: ${user}"
|
||||
|
||||
# If node not given, link to a generic jupyter from spawner. If node given and a notebook already started there, link there.
|
||||
if [ "${node}" = false ]; then
|
||||
cmd="ssh -J ${user}@hop.psi.ch ${user}@ra.psi.ch -L ${port}:${addr}.psi.ch:443"
|
||||
else
|
||||
echo "Establishing tunnel to ${node}"
|
||||
cmd="ssh -J ${user}@hop.psi.ch ${user}@ra.psi.ch -L ${port}:${node}.psi.ch:8888"
|
||||
fi
|
||||
|
||||
if ${debug} ; then
|
||||
echo "DEBUG:" $cmd
|
||||
else
|
||||
$cmd
|
||||
fi
|
||||
Reference in New Issue
Block a user