Skip to content

E2E

E2E #180

Workflow file for this run

name: E2E
# End-to-end protocol tests: spawn the shipped example servers (and the wire-
# conformance fixture) as real subprocesses and drive them as an external
# client — full bodies and HTTP headers, the things in-process tests can't
# see. Skipped by the regular CI matrix (they pay full JIT startup per
# server); run here on every PR, nightly, and on demand.
on:
pull_request: {}
schedule:
- cron: '0 7 * * *' # nightly at 07:00 UTC
workflow_dispatch: {}
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
e2e:
name: End-to-end protocol tests
runs-on: ubuntu-latest
timeout-minutes: 30
permissions: # needed to allow julia-actions/cache to proactively delete old caches that it has created
actions: write
contents: read
env:
MCP_TEST_E2E: "true" # force the E2E suite even though CI=true on Actions
steps:
- uses: actions/checkout@v7
- uses: julia-actions/setup-julia@v3
with:
version: '1'
- uses: julia-actions/cache@v3
- uses: julia-actions/julia-buildpkg@v1
- uses: julia-actions/julia-runtest@v1