#!/bin/bash
set -e
set -o ignoreeof

echo "Bash script launching COSS_ARCHIVING..."


# CHANGE ME ONCE!
export CONTAINER_DATA=~/Bulk/COSS/Downloads/coss_archiving
export UNAME=remy
# CHANGE ME WHEN UPDATING FIREFOX
export GECKODRIVER_IMG=selenium/standalone-firefox:104.0
# version must be >= than the one on the host or firefox will not start (because of mismatched config)

if [[ $1 == "debug" ]]
then
    export DEBUG=true
    export HEADFULL=true
    export CODE=./
    export ENTRYPOINT=/bin/bash
    # since service ports does not open ports on implicitly started containers, also start geckodriver:
    docker compose up -d geckodriver
elif [[ $1 == "production" ]]
then
    export DEBUG=false
elif [[ $1 == "build" ]]
then
    export DEBUG=false
    docker compose build
    exit 0
elif [[ $1 == "down" ]]
then
    docker compose stop
    exit 0
else
    echo "Please specify the execution mode (debug/production/build) as the first argument"
    exit 1
fi

shift # consumes the variable set in $1 so that $@ only contains the remaining arguments

docker compose run -it --service-ports "$@"

echo "Docker run finished, shutting down containers..."
docker compose stop
echo "Bye!"