deg-skeletor / skeletor-core

The core engine for the Skeletor family of build tools
0 stars 0 forks source link

Initial task runner and configuration development, plus tests #18

Closed heaper closed 6 years ago

heaper commented 6 years ago

Core should now be able to accept a configuration object and run tasks based on that configuration.

A task can consist of one or more sub-tasks or one or more skeletor plugins. Sub-tasks usually would only contain one or more plugins, but in theory could contain sub-tasks of their own.

The runTask() method also will accept an options object, which currently only supports a "subTasksToInclude" property.

heaper commented 6 years ago

Anybody see other problems with this PR?

aladage commented 6 years ago

Looks good to me. @heaper similar to our conversation about the wizard yesterday, core will be a dependency of cli, but cli does not need to be a dependency of core, correct?

jsmapr1 commented 6 years ago

It may make sense for core to be a peer dependency of cli. But it might not. It's not quite a plugin, and doesn't technically even need core to function correctly. ¯_(ツ)_/¯

heaper commented 6 years ago

Joe brings up a good point. I think most, maybe all, of our skeletor plugins will have skeletor-core as a peer dependency. This is because these plugins are meant to be used with skeletor-core, but never actually use it directly (skeletor-plugin-postcss never does a require('skeletor-core'), for example). On the other hand, the CLI will use skeletor-core directly as it parses user commands and calls the core runTask() method. So that would be a normal dependency, I think. But to answer Aaron's original question, CLI will not be a dependency of skeletor-core.