gotestyourself / gotestyourself/gotestsum
Improvements for `gotestsum tool ci-matrix`
- Dominant language
- Go
- Stars
- 2.7k
- Forks
- 171
- PR merge metrics
- No merged PRs in 30d
Description
#258 adds a new subcommand `gotestsum tool ci-matrix` for using the timing in `test2json` files to split all the packages into buckets of packages that can be run in parallel in github actions.
This issue is to track improvements to the new subcommand:
* [ ] Add support for splitting a single package into buckets of tests #277 - useful for integration test packages that contain many slow tests
* [ ] Support different output formats. The current format is optimized for integrating directly into github actions workflows. But the logic in this subcommand could also be used with other CI systems, or it might be integrate into existing tooling
* [ ] Document `gotestsum tool ci-matrix` in the README.
* [ ] Add a new `--jsonfile-timing=` flag to `gotestsum` as an alternative to `--jsonfile`. The file would include only the events for `run`, `pass`, and `fail` (no `output` events). This would significantly reduce the size of the files that need to be stored in artifacts and cache to calculate the partitioning of packages in future runs.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reading the existing `gotestsum tool ci-matrix` implementation introduced by #258 and the related single-package splitting issue #277. Review the README and current `--jsonfile` handling before separating the requested improvements. Done means the selected improvements are implemented with suitable output and timing-file behavior, and the command is documented for its supported CI uses.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, go
- Domain
- ci-cd, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100