Closed
Description
Extensions are a way to link functionality to a job property. An extension follows the interceptor pattern: it has a "before" and "after" phase, both are optional. They have full access to the runtime. When including an extension dependency in deps.edn
, you should also require it so it gets "registered". MonkeyCI will apply the extension when it encounters a key on a job for which that extension was registered.
We could set up caches and artifacts as extensions this way.
Possible additional features:
- allow extensions to be run before or after other extensions, instead of just before/after the action.