mk icon indicating copy to clipboard operation
mk copied to clipboard

Add ability to declare dependencies using requires/provides blocks

Open ssbarnea opened this issue 3 years ago • 0 comments

Once we have a configuration file, user should be able to declare dependencies like:

# Example config that will prevent `build` from running unless `lint` already passed.
actions:
    build:
       requires: lint

Please keep in mind that the commands themselves can be exposed by different tools and that this configuration only add extra metadata to those. As you can see lint may not be defined inside the config, but this example should be valid as is.

Obviously that no lint action is found to be exposed by any known tool, an error similar to Unknown action lint was required by build. should be displayed.

That feature is very useful for cases where multiple tools are used which do not glue together well (tox and npm for example).

While I am inclined to used requires/provides pair, I do also consider before/after as alternatives. If you have any preference feel free to share it before we implement this feature.

ssbarnea avatar Apr 05 '21 08:04 ssbarnea