ci: check the CLI against the live API in workflows the dashboard can show - #86
Merged
Merged
Conversation
… show The development dashboard shows workflow results, and the coverage check was a step of ci.yml that only warned. Two workflows, named like preflight-kit's, now fetch the production and the dev spec every weekday morning, build the CLI against them, and fail when an operation is neither called by a command nor listed with a reason. The production one keeps the coverage issue open while anything is uncovered. ci.yml keeps its build against the live API, which blocks a release.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The development dashboard shows a workflow's pass or fail, and its Additional checks column already has preflight-kit's Check Open API Spec (platform vs preflight-kit / PROD) and (… / DEV). The coverage check from #85 couldn't appear there: it was a step inside
ci.ymlthat only warned.New workflows, named the same way as preflight-kit's, so they read the same on the dashboard:
spec-diff-platform-prod.yml: Check Open API Spec (platform vs cli / PROD), againstplatform.steadybit.com.spec-diff-platform-dev.yml: Check Open API Spec (platform vs cli / DEV), againstplatform.dev.steadybit.com.Both run every weekday at 07:00 UTC, like preflight-kit's, as well as on pushes to
main, by hand, and on PRs that change the check. Both callspec-check.yml, which:internal/tools/spec/coverage.go, and lists those operations in the job summary.Only the PROD workflow keeps the "Platform API operations no CLI command covers" issue open while anything is uncovered, and closes it afterwards. The two don't share an issue, so they can't overwrite each other.
ci.yml: the coverage step moves out, and the job losesissues: write. Its nightly build against the live API stays, because it's what blocks a release on a breaking change.A separate PR on
development-dashboardadds the two workflows to theclirow.