Skip to content

http adapter: REST path params + PATCH/PUT/DELETE + broker pattern allow-list #110

http adapter: REST path params + PATCH/PUT/DELETE + broker pattern allow-list

http adapter: REST path params + PATCH/PUT/DELETE + broker pattern allow-list #110

# The repo's required check (job `validate`). Runs on every PR:
# - builds/vets/tests the pilot-app tool (code PRs), and
# - runs the verifier on any submitted bundle (submission PRs, SPEC §7.1).
# Always runs, so it's a valid branch-protection gate for both PR kinds.
name: submission-validate
on:
pull_request:
push:
branches: [main]
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-go@v5
with:
go-version: "1.25"
- name: Build, vet, test the tool
run: |
go build -o /tmp/pilot-app ./cmd/pilot-app
go vet ./...
go test ./...
- name: Verify any submitted bundles
run: |
set -euo pipefail
shopt -s nullglob
found=0
for sub in submissions/*/submission.json; do
dir="$(dirname "$sub")"
echo "::group::verify $dir"
if jq -e 'has("bundle")' "$sub" >/dev/null 2>&1; then
# Pointer shape: a pre-built bundle is committed alongside.
bundle="$dir/$(jq -r .bundle "$sub")"
test -f "$bundle" || { echo "missing bundle $bundle"; exit 1; }
/tmp/pilot-app verify "$bundle"
else
# Rich Submission (parity with the publish-api): scaffold + build
# every platform from the spec and run the catalogue review gate.
/tmp/pilot-app verify-submission "$sub"
fi
echo "::endgroup::"
found=1
done
if [ "$found" = 0 ]; then echo "no submissions in this PR — tool CI only"; fi