SWT native builds often blocked by aggregation-build test execution
Summary
In the Eclipse RelEng JIPP the build of the native SWT binaries as well as the execution of the platform-specific test for Eclipse SDK I-builds and P/Y-builds all run partly on the special nodes/machines of a specific platform and architecture. The current configuration of these special nodes currently only permits one executor per node, which means that for example only one job at the time can run on the windows or macos-aarch64 machine.
While the part to build SWT native binaries for a specific platform usually runs in a minute or less, the execution of the I/Y/P-builds often runs for about three hours and therefore blocks the special builds in that time. For that reason the SWT pipeline already has a timeout of three hours, while it can complete in under 10min. This can be annoying for change verification builds and if a necessary native-binaries build following a change on the master is blocked for too long. Then other developers can't fetch the new natives or an I-build could start in the meantime and the natives could not match the java code (although this scenario is unlikely because short before an I-build the special build nodes should not be occupied).
Would it be possible to somehow enable SWT natives build in parallel to the I/Y/P-build test execution?
In general I could image the following solutions:
- Pause long running jobs and resume after quick ones are done (don't know a way to implement that)
- Add a second executor for the special platform-specific nodes. But only for fast running jobs, not for long ones in case I/Y/P-builds tests are delayed for some reason and have queued up.
- Move the
eclipse.platform.swt
project/job back to platform JIPP and add the platform-specific executors there. This is effectively a second executor but only for the SWT natives build, so that that I/Y/P-build tests cannot run at the same time.
Priority
- Urgent
- High
- Medium
- Low
Severity
- Blocker
- Major
- Normal
- Low