First pass at CI workflow - #14
Merged
Merged
Conversation
Runs ./run against an ODM docker image on a self-hosted runner and publishes the JUnit reports to the Checks tab and the run directory as a build artifact. Triggers on workflow_dispatch (image/tag/group), push and pull_request on master (fast small group, fork PRs skipped), and a repository_dispatch odm-image-published event so ODM can kick a run after publishing an image. Runs are serialized with a concurrency group. The runner is CPU-only, so the suite covers ODM's CPU path and the GPU image is not tested. docs/ci.md covers the runner setup, the repository_dispatch payload contract, the ODM-side dispatch step and the OATS_DISPATCH_TOKEN secret.
The output is far too large to store as a github artifact. Cut to only the text outputs.
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 join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
This adds a github action to oats so we can automatically run tests when required.
The CI job can be triggered in three ways:
smallfor PRs thenallfor releases.I've added a doc to be explicit about what needs to be set up but I expect to iterate as we go here.
As we don't have the storage yet, this just stores the text artifacts on github. This will allow us to debug failures but relies on us writing tests for the output. Test results are also uploaded/registered.