Repository navigation
44 lines (40 loc) · 1.77 KB
/
Copy pathpostman.yml
File metadata and controls
44 lines (40 loc) · 1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
name: API Contract (Postman)
# Boots a full Fleetbase stack (published image) and runs the Core API Postman
# collection against the live API. Delegates to the reusable workflow in
# fleetbase/fleetbase. Requires org secrets POSTMAN_API_KEY + _GITHUB_AUTH_TOKEN
# (inherited); no-ops until POSTMAN_API_KEY is set.
#
# Deliberately unpinned. The reusable workflow defaults to booting fleetbase/fleetbase@main
# against fleetbase/fleetbase-api:latest, so every release is picked up automatically and
# there is no ref here to remember to bump. Each run records the image digest it actually
# resolved in its job summary, so a result stays traceable. To reproduce an older run:
#
# with:
# fleetbase-ref: v0.7.53
# api-image: fleetbase/fleetbase-api:v0.7.53
# Pushes run only for main. A release or dev branch always has a pull request, and
# pull_request already runs on every push to it; triggering on push too ran the
# ~11-minute contract twice for each commit.
on:
push:
branches: [main]
pull_request:
branches: [main, 'dev-v*', 'release/v*']
workflow_dispatch:
# A newer push to the same pull request or branch makes the running contract stale.
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
contract:
uses: fleetbase/fleetbase/.github/workflows/api-contract.yml@main
with:
collections: "Fleetbase Core API"
build-from-source: false
# Without this the run tests the version of fleetbase/core-api baked into the
# published image, not the branch under review. The workflow checks this
# repository out at the commit under test and swaps it into the container.
overlay-package: fleetbase/core-api
secrets: inherit