Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #5661 +/- ##
=========================================
Coverage ? 78.7%
=========================================
Files ? 814
Lines ? 71639
Branches ? 8443
=========================================
Hits ? 56357
Misses ? 15282
Partials ? 0 🚀 New features to boost your workflow:
|
|
I'll merge this after 2.6.0 has been released to not cause any disruptions during the release process. |
|
I made some small tweaks to further improve the workflows, and I think they're now in a good place.
As for follow-ups:
|
| parser = argparse.ArgumentParser() | ||
| parser.add_argument('-c', '--config', help='Path to the JSON file containing the strategy matrix configuration.') | ||
| parser.add_argument('-r', '--ref', help='Git reference to generate the strategy matrix for (e.g. /refs/heads/develop).') | ||
| parser.add_argument('-a', '--all', help='Set to generate all configurations (generally used when merging a PR) or leave unset to generate a subset of configurations (generally used when committing to a PR).', action="store_true") |
| conan_remote_username: ${{ secrets.CONAN_REMOTE_USERNAME }} | ||
| conan_remote_password: ${{ secrets.CONAN_REMOTE_PASSWORD }} | ||
|
|
||
| build-windows: |
There was a problem hiding this comment.
These 3 build-<OS> would look much better as a matrix, because the only thing which changes is os.
And when you unite them you'll also be able to move dependencies_force_build and dependencies_force_upload to just one place, so there will be no need to set it in generate-outputs.
This workflow will become much shorter and understandable.
And the same thing is true about on-pr workflow
There was a problem hiding this comment.
Yes, great points as follow-ups. I've got a list of things we can further improve.
…actoring-1 * XRPLF/develop: fix: Modify jobs to use '>>' instead of 'tee' for GITHUB_OUTPUT (#5699) refactor: Revamp CI workflows (#5661) refactor: Decouple net from xrpld and move rpc-related classes to the rpc folder (#5477) Set version to 2.6.0-rc2 docs: Updates list of maintainers and reviewers (#5687) fix: Change log to debug level for AMM offer retrieval and IOU payment check (#5686) fix: Add -Wno-deprecated-declarations for Clang only (#5680) Update .git-blame-ignore-revs for #5657 (#5675) Fix BUILD.md instruction (#5676) Set version to 2.6.0-rc1 fix: Improve logging of the reason to refuse a peer connection (#5664) fix: Make test suite names match the directory name (#5597) chore: Run prettier on all files (#5657) chore: Set CONAN_REMOTE_URL also for forks (#5662) chore: Cleanup bin/ directory (#5660) perf: Optimize hash performance by avoiding allocating hash state object (#5469)
…to ximinez/lending-XLS-66 * XRPLF/ximinez/lending-refactoring-4: fix: Modify jobs to use '>>' instead of 'tee' for GITHUB_OUTPUT (#5699) refactor: Revamp CI workflows (#5661) refactor: Decouple net from xrpld and move rpc-related classes to the rpc folder (#5477) Set version to 2.6.0-rc2 docs: Updates list of maintainers and reviewers (#5687) fix: Change log to debug level for AMM offer retrieval and IOU payment check (#5686) fix: Add -Wno-deprecated-declarations for Clang only (#5680) Update .git-blame-ignore-revs for #5657 (#5675) Fix BUILD.md instruction (#5676) Set version to 2.6.0-rc1 fix: Improve logging of the reason to refuse a peer connection (#5664) fix: Make test suite names match the directory name (#5597) chore: Run prettier on all files (#5657) chore: Set CONAN_REMOTE_URL also for forks (#5662) chore: Cleanup bin/ directory (#5660) perf: Optimize hash performance by avoiding allocating hash state object (#5469)
This change refactors the CI workflows to leverage the new CI Docker images for Debian, Red Hat, and Ubuntu.
High Level Overview of Change
This PR refactors the CI workflows to leverage the new CI Docker images for Debian, Red Hat, and Ubuntu. All workflows and actions have been rewritten as follows.
On each PR commit
The following jobs run:
clang-format, adds additional formatting usingprettier..githubdirectory.needs:keyword to wait on the Linux, MacOS, and Windows jobs instead of using a third-party action to poll for the completion of only the Linux jobs.On trigger
The following jobs run for the following events:
Context of Change
The CI workflows needed some TLC after the Conan 2 update and the new availability of our Conan Center Index fork.
Type of Change
.gitignore, formatting, dropping support for older tooling)Future Tasks
It can be considered to add extra labels that, when applied to a PR, will trigger a specific run using one or more specific configurations. For instance, if a configuration using Clang 19 fails to build we may only notice this during merge; being able to trigger this during a PR will facilitate debugging.