veilid-python: update_schema.sh now checks in a few places for veilid-server

This commit is contained in:
Mike Phipps 2023-08-24 23:30:44 +00:00 committed by Christien Rioux
parent 07646679d0
commit 9a46a28a3d

View File

@ -2,16 +2,27 @@
set -eo pipefail set -eo pipefail
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
VEILID_SERVER=$SCRIPTDIR/../target/debug/veilid-server # If $VEILID_SERVER is set, use that, otherwise find a valid Veilid server by looking in the usual places
if [ -z "${VEILID_SERVER}" ]; then
for VEILID_SERVER_CANDIDATE in ${SCRIPTDIR}/../target/debug/veilid-server; do
echo -n "Trying Veilid server at ${VEILID_SERVER_CANDIDATE}..."
if [ -f "${VEILID_SERVER_CANDIDATE}" ]; then
echo " found!"
VEILID_SERVER="${VEILID_SERVER_CANDIDATE}"
break
else
echo " not found."
fi
done
fi
# Ensure executable exists # If $VEILID_SERVER is still not set, or if it doesn't actually exist, bail
if [ ! -f "$VEILID_SERVER" ]; then if [[ -z "${VEILID_SERVER}" || ! -f "${VEILID_SERVER}" ]]; then
echo "$VEILID_SERVER does not exist. Build with cargo build." echo "No valid in-tree Veilid server was found. Go to the top level directory, run 'cargo build', then change back to this directory and run this script again."
exit 1 exit 1
fi fi
# Produce schema from veilid-server # Produce schema from veilid-server
$VEILID_SERVER --emit-schema Request > $SCRIPTDIR/veilid/schema/Request.json for SCHEMA in "Request" "RecvMessage"; do
$VEILID_SERVER --emit-schema RecvMessage > $SCRIPTDIR/veilid/schema/RecvMessage.json echo -n "Updating ${SCHEMA}..." && ${VEILID_SERVER} --emit-schema ${SCHEMA} > $SCRIPTDIR/veilid/schema/${SCHEMA} && echo " done." || echo " error!"
done