Investigate how many APIs can be tested in parallel by nimibot.
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 128
- Forks
- 110
- Avg merge
- 5d 14h
- Merged PRs (30d)
- 10
Description
Description of issue
There are 3 nimibot runners.
- 1 for Linux
- 1 for 32-bit Python on Windows
- 1 for 64-bit Python on Windows
By default, if max-parallel is not specified in the workflow, a value will be used based upon runner availability. Since we seem to only test 3 APIs on each nimibot at once, I suspect this is being set to 3 based upon the existence of 3 runners, despite the fact that each workflow is restricted to a specific runner. We might be able to set it higher and test more APIs at once, reducing the time that it takes to complete testing.
(We should keep in mind that there are shared resources, like the grpc_device_server and some multi-threading tests). I also don't know how many processors these VMs have available. It may or may not be a good idea to set max-parallel all the way to 9.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Locate the workflow that runs nimibot's API tests and inspect its max-parallel value, runner restrictions, and related shared-resource tests. Measure or establish the available VM capacity and determine a safe parallelism setting; done means reporting the supported value and any required workflow change.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, python
- Domain
- ci-cd, testing-qa
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100