#!/bin/bash
set -e

CMD_NAME=`basename $0`
COMMAND=$1

IMAGE_SERVER="harbor.supwisdom.com"
IMAGE_PREFIX="authx-service"

NAME="poa-api-docs-installer"
VERSION="1.1.2-SNAPSHOT"


function build
{
  local variant=$1
  if [ -z "$variant" ]; then
    local variant_suffix=""
  else
    local variant_suffix="-$variant"
  fi
  
  docker build --force-rm --squash --pull -t ${IMAGE_SERVER}/${IMAGE_PREFIX}/${NAME}:${VERSION}$variant_suffix --file Dockerfile .;
}

function push
{
  local variant=$1
  if [ -z "$variant" ]; then
    local variant_suffix=""
  else
    local variant_suffix="-$variant"
  fi
  docker push ${IMAGE_SERVER}/${IMAGE_PREFIX}/${NAME}:${VERSION}$variant_suffix;
}

function usage
{
  echo "Usage: ${CMD_NAME} build|push [variant: DEV | TEST | STAGING | RELEASE]"
}

case $COMMAND in
  'build')
    build
    ;;
  'push')
    push
    ;;
  *)
    usage
    exit 1
  ;;
esac

exit 0
