#!/bin/bash

DF_devel=docker/docker_devel
C_devel=patrac_devel
DF_environment=docker/docker_environment
C_environment=patrac_environment

container=patrac_devel

if [ $# -eq 2 ]; then
  container=$2
fi

if [ $# -eq 1 ] || [ $# -eq 2 ]; then
  if [ $1 = "build-devel" ]; then
    echo "Building $C_devel container..."
    docker rmi $C_devel -f
    docker build -t $C_devel -f $DF_devel .
  elif [ $1 = 'build-env' ]; then
    echo "Building $C_environment container..."
    docker rmi $C_environment -f
    docker build -t $C_environment -f $DF_environment .
  elif [ $1 = 'build-all' ]; then
    echo "Building ubuntu, patrac_environment and patrac_devel containers..."
    docker rmi $C_devel -f
    docker rmi $C_environment -f
#    docker rmi ubuntu:16.04 -f
#    docker pull ubuntu:16.04
    docker build -t $C_environment -f $DF_environment .
    docker build -t $C_devel -f $DF_devel .
  elif [ $1 = 'run' ]; then
    xhost +
    docker run -it \
    --rm \
    --env="DISPLAY" \
    --env="QT_X11_NO_MITSHM=1" \
    --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \
    -v /data:/data \
    -v $(pwd):/usr/share/qgis/python/plugins/qgis_patrac \
    --net=host \
    --name patrac \
    $container \
    qgis
    xhost -
  elif [ $1 = 'run2' ]; then
    sudo mount /dev/sda4 /home/data/
    sudo mount /dev/sda5 /home/data2/
    sudo mount /dev/sda6 /home/data3/
    xhost +
    docker run --rm \
	    -i -t \
	    -v ${HOME}:/home/${USER} \
	    -v /home/data:/data \
	    -v /home/data2:/data2 \
	    -v /home/data3:/data3 \
	    -v /tmp/.X11-unix:/tmp/.X11-unix \
	    -e DISPLAY=unix$DISPLAY \
	    --net=host \
	    --name patrac \
	    patrac_devel \
      qgis --profiles-path /home/${USER}/qgis3_profiles
    xhost -
  fi
else
    # shellcheck disable=SC2059
    printf "Usage: ./patrac [OPTION] [CONTAINER]

    OPTIONS:
    build-devel   build patrac development container
    build-env     build patrac environment container
    build-all     build ubuntu, patrac environment and patrac development containers
    run           run qgis with plugin mapped to /usr/share/qgis/python/plugins/qgis_patrac
    run2          run qgis with profile from /home/${USER}/qgis3_profiles\n\n"
    exit 1
fi
