#!/bin/sh -eu
set -o pipefail
. ~/.config/sr.ht

execute=true
while getopts x name
do
	case $name in
	x) execute=false;;
	?)
		printf "Usage: %s [-x] [manifest]\n" "$0"
		exit 1
		;;
	esac
done
shift $(($OPTIND - 1))

if [ $# -eq 1 ]
then
    manifest=$1
else
    manifest=.build.yml
fi

vars="$(jq -sR '
{
	"tags": ["'"$(basename $(pwd))"'"],
	"execute": '$execute',
	"manifest": .
}
' <"$manifest")"
query="$(jq -sR '.' <<"EOF"
mutation SubmitJob($manifest: String!, $tags: [String!]!, $execute: Boolean!) {
	submit(manifest: $manifest, tags: $tags, execute: $execute) {
		id
	}
}
EOF
)"

curl --oauth2-bearer "$bearer_token" \
	-H Content-Type:application/json \
	-d '{
		"query": '"$query"',
		"variables": '"$vars"'
	}' "${BUILDSRHT:-https://builds.sr.ht}/query" | jq .
