12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758 |
- #!/bin/sh -e
- if [ "$1" = "/bin/sh" ]; then
- shift
- fi
- if [ -n "$HTTPS_PORT" ]; then
- FWD="`echo $HTTPS_PORT | sed 's|^tcp://||'`"
- elif [ -n "$HTTP_PORT" ]; then
- FWD="`echo $HTTP_PORT | sed 's|^tcp://||'`"
- elif [ -n "$APP_PORT" ]; then
- FWD="`echo $APP_PORT | sed 's|^tcp://||'`"
- fi
- ARGS=""
- if [ -n "$NGROK_AUTH" ]; then
- ARGS="-authtoken=$NGROK_AUTH "
- fi
- # Set the subdomain or hostname, depending on which is set
- if [ -n "$NGROK_HOSTNAME" ] && [ -n "$NGROK_AUTH" ]; then
- ARGS="$ARGS -hostname=$NGROK_HOSTNAME "
- elif [ -n "$NGROK_SUBDOMAIN" ] && [ -n "$NGROK_AUTH" ]; then
- ARGS="$ARGS -subdomain=$NGROK_SUBDOMAIN "
- elif [ -n "$NGROK_HOSTNAME" ] || [ -n "$NGROK_SUBDOMAIN" ]; then
- if [ -z "$NGROK_AUTH" ]; then
- echo "You must specify an authentication token after registering at https://ngrok.com to use custom domains."
- exit 1
- fi
- fi
- if [ -n "$NGROK_HEADER" ]; then
- ARGS="$ARGS -host-header=$NGROK_HEADER "
- fi
- PROTOCOL="http"
- if [ "$NGROK_PROTOCOL" == "TCP" ]; then
- PROTOCOL="tcp "
- fi
- if [ -n "$NGROK_USERNAME" ] && [ -n "$NGROK_PASSWORD" ] && [ -n "$NGROK_AUTH" ]; then
- ARGS="$ARGS -auth=\"$NGROK_USERNAME:$NGROK_PASSWORD\" "
- elif [ -n "$NGROK_USERNAME" ] || [ -n "$NGROK_PASSWORD" ]; then
- if [ -z "$NGROK_AUTH" ]; then
- echo "You must specify a username, password, and Ngrok authentication token to use the custom HTTP authentication."
- echo "Sign up for an authentication token at https://ngrok.com"
- exit 1
- fi
- fi
- case "$1" in
- -h|help) ARGS=$1 ;;
- *) ARGS="$PROTOCOL $ARGS -log stdout $* $FWD" ;;
- esac
- exec "$@"
|