#!/bin/sh

set -e

. /etc/pkgos/pkgos.conf

ME=$(basename $0)

usage () {
	echo "$ME <--project-path PROJECT_PATH / --project-name PROJECT_NAME>"
	echo "For example: $ME --project-path services/nova"
	echo "For example: $ME --project-name nova"
	exit 1
}


DEBUG=no
for i in $@ ; do
	case "${1}" in
	"--project-path")
		if [ -z "${2}" ] ; then
			echo "No parameter defining the project_path"
			usage
		fi
		PROJECT_PATH=${2}
		shift
		shift
	;;
	"--project-name")
		if [ -z "${2}" ] ; then
			echo "No parameter defining the project_name"
			usage
		fi
		PROJECT_NAME=${2}
		shift
		shift
	;;
	*)
	;;
	esac
done

# We can't have both
if [ -n "${PROJECT_PATH}" ] && [ -n "${PROJECT_NAME}" ] ; then
	usage
fi

# But one is mandatory
if [ -z "${PROJECT_PATH}" ] && [ -z "${PROJECT_NAME}" ] ; then
	usage
fi

if ! [ -r ${ALLGIT_FILE} ] ; then
	pkgos-salsa-list-all-git
fi


if [ -n "${PROJECT_NAME}" ] ; then
	PROJECT_ID=$(grep -E "openstack-team/[a-z]+/${PROJECT_NAME}\.git,[0-9]+" ${ALLGIT_FILE} | cut -d',' -f2)
else
	PROJECT_ID=$(grep -E "openstack-team/${PROJECT_PATH}.git,[0-9]+" ${ALLGIT_FILE} | cut -d',' -f2)
fi

if [ -z "${PROJECT_ID}" ] ; then
	echo "Cannot find it."
	exit 1
fi
echo $PROJECT_ID

exit 0
