#!/bin/bash DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" if [ "$1" = "--backend" -a -n "$2" ]; then BACKEND="$2" else BACKEND="sql" fi if ! type python > /dev/null 2>&1 && ! type python3 > /dev/null 2>&1; then echo "Cannot start the canaille demo server. Please install python on your system" echo "or run the demo with docker-compose." exit 1 fi if ! type poetry > /dev/null 2>&1; then echo "Cannot start the canaille demo server. Please install poetry on your system" echo "or run the demo with docker-compose." echo "https://python-poetry.org/docs/#installation" exit 1 fi pushd "$DIR" > /dev/null 2>&1 || exit if [ "$BACKEND" = "memory" ]; then poetry install --with demo --without dev --extras front --extras oidc env poetry run honcho --procfile Procfile-memory start elif [ "$BACKEND" = "sql" ]; then poetry install --with demo --without dev --extras front --extras oidc --extras sql env poetry run honcho --procfile Procfile-sql start elif [ "$BACKEND" = "ldap" ]; then if ! type slapd > /dev/null 2>&1; then echo "Cannot start the canaille demo server. Please install OpenLDAP on your system" echo "or run the demo with docker-compose." exit 1 fi poetry install --with demo --without dev --extras front --extras oidc --extras ldap env poetry run honcho --procfile Procfile-ldap start else echo "Usage: run.sh --backend [sql|memory|ldap]" fi popd || exit