Skip to content

Commit

Permalink
remove shopt&alias to make it work on powershell
Browse files Browse the repository at this point in the history
syntax:  bash geopython-workshop-ctl.sh start
  • Loading branch information
Genuchten committed Jun 21, 2023
1 parent 1f1a37b commit 6426d43
Show file tree
Hide file tree
Showing 3 changed files with 61 additions and 2 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Docker-Volume-mounted. There is no need to build the Docker Image yourself (see

All services are started using a [Docker Compose file](https://github.com/geopython/geopython-workshop/blob/master/workshop/docker-compose.yml).

Windows users; use [powershell](https://en.wikipedia.org/wiki/PowerShell) or [Linux Subsystem](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux) to run below commands.
Windows users; use [powershell](https://en.wikipedia.org/wiki/PowerShell) or [Linux Subsystem](https://en.wikipedia.org/wiki/Windows_Subsystem_for_Linux) to run below commands. On powershell, use the .ps.sh script and prepend with `bash`, eg. `bash ./geopython-workshop-ctl.ps.sh start`.

```bash
cd workshop
Expand Down
59 changes: 59 additions & 0 deletions workshop/geopython-workshop-ctl.ps - Copy.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
#!/bin/bash

PROGRAM_NAME=$(basename $0)

USAGE="Usage: $PROGRAM_NAME <start|stop|url|update|clean>"

if [ "$#" -ne 1 ]; then
echo $USAGE
exit 1
fi

# Test for the command
if [ $1 == "start" ]; then
$0 stop
docker compose up -d
elif [ $1 == "stop" ]; then
docker compose stop
docker compose rm --force
elif [ $1 == "url" ]; then
# try to open the Jupyter Notebook in Browser
platform="$(uname | tr '[:upper:]' '[:lower:]')"

if [[ $platform == 'linux' ]]; then
openapp="xdg-open"
elif [[ $platform == 'darwin' ]]; then # MacOS
openapp="open"
else # assume some kind of Windows variant
openapp="cmd /c start"
fi

url=$(docker logs geopython-workshop-jupyter 2>&1 | grep " or http" | sed 's/ or //')
if [ -z ${url} ]; then
echo "workshop not started"
echo "did you start the workshop? (i.e. bash $0 start)"
exit 2
fi
echo "Attempting to open ${url} in your browser on platform ${platform}..."
echo "If this fails, simply copy/paste that URL in your browser"
${openapp} ${url}
elif [ $1 == "update" ]; then
docker pull geopython/geopython-workshop:latest
echo
echo
echo "workshop is running the latest Docker images"
echo "If updates occured, then stop/start the workshop"
elif [ $1 == "clean" ]; then
# Remove all exited containers
for c in $(docker ps -a -f status=exited -q)
do
docker rm ${c}
done
# And dangling images
for i in $(docker images -f dangling=true -q)
do
docker rmi ${i}
done
else
echo ${USAGE}
fi
2 changes: 1 addition & 1 deletion workshop/geopython-workshop-ctl.sh
Original file line number Diff line number Diff line change
Expand Up @@ -76,4 +76,4 @@ elif [ $1 == "clean" ]; then
done
else
echo ${USAGE}
fi
fi

0 comments on commit 6426d43

Please sign in to comment.