Implement a setup phase for external modules
Opened this issue · 0 comments
unode commented
When using external modules we currently provide an init
phase in addition to the actual execution phase.
init
can be used to test if all requirements to execute the module are satisfied.
On 8459d7e I've introduced a lock such that init
could be used for concurrent unsafe operations such as install/build software. The lock however gets in the way of execution since several jobs will fight for the same lock. Even worse, if a job fails during this phase, other jobs will be waiting for 24h+.
The discussed solution is to implement a setup
phase that will lock but would be skipped once successfully finished. Much like a makefile rule with a setup.done
target.