Merge pull request #584 from openziti/frontdoor-catch-reserve-fail

distinguish empty output from invalid JSON in reserve share handler
This commit is contained in:
Kenneth Bingham 2024-03-14 11:07:04 -04:00 committed by GitHub
commit 6a9a18997d
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -147,11 +147,14 @@ if [[ "${ZROK_FRONTEND_MODE:-}" == temp-public ]]; then
exec zrok ${ZROK_CMD}
else
# reserve and continue
zrok ${ZROK_CMD} | jq -rc | tee ~/.zrok/reserved.json
zrok ${ZROK_CMD} > ~/.zrok/reserved.json
# share the reserved backend target until exit
if ! [[ -s ~/.zrok/reserved.json ]]; then
echo "ERROR: empty or missing $(realpath ~/.zrok)/reserved.json" >&2
exit 1
elif ! jq . < ~/.zrok/reserved.json &>/dev/null; then
echo "ERROR: invalid JSON in $(realpath ~/.zrok)/reserved.json" >&2
exit 1
else
ZROK_PUBLIC_URLS=$(jq -cr '.frontend_endpoints' ~/.zrok/reserved.json 2>/dev/null)
if [[ -z "${ZROK_PUBLIC_URLS}" || "${ZROK_PUBLIC_URLS}" == null ]]; then