-
Notifications
You must be signed in to change notification settings - Fork 277
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[ci] Add nightly firtool
release build, options to workflow_dispatch
#5742
Merged
Conversation
This file contains 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
4b01037
to
9d34e62
Compare
6488e68
to
15a2942
Compare
jackkoenig
approved these changes
Aug 1, 2023
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is pretty cool, nice work!
3e612c4
to
82b76c6
Compare
Change the firtool release CI to not use a hard-coded build matrix. Refactor this into two jobs: 1. "choose-matrix" which constructs JSON blobs of what the paramters are for the build matrix. These JSON blobs are constructed from the step environment ("env") to aid readability. 2. "publish" which reads the JSON blobs to construct the build matrix. (This operates basically the same as before.) This is done to later enable more plasticity of this CI job for uses which are not just release publishing, but also for nightly publihsing. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
Change the CI for building a release of firtool from using a split LLVM/CIRCT build to a unified build. The latter should be substantially faster. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
Add nightly builds of `firtool` for Linux targets only. These builds occur everyday at 0700 UTC (0000 PDT/2300 PST). Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
To facilitate testing, add an input OS variable. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
Add an environment option to skip CIRCT testing. This is intended to be used if the previous job knows that tests don't need to be run (or for testing of actions with a slightly faster turnaround). Expose this option as a workflow_dispatch input to make this easier to test. Signed-off-by: Schuyler Eldridge <schuyler.eldridge@sifive.com>
82b76c6
to
cbcda6c
Compare
497c4fd
to
cbf10a0
Compare
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.
Add a nightly scheduled build of
firtool
. This is intended for other projects to consume to do top-of-tree testing.Add options to control the manually run workflow dispatch build. This enables building any of
[linux, macos, windows]
builds and with an optional to disable testing. I've been using this to test the build. The UI that GitHub gives you is shown below:This is stacked on #5741 until that lands.
Once the nightly build is running, any user can grab this through the GitHub API, substituting
$TOKEN
for a GitHub personal or app token. The following script will grab the latest nightly and extract it.