npm install runner-generator-npm
Add to the scope:
const generator = require('runner-generator-npm');
Generate tasks according to the given config:
const tasks = generator({
target: 'target-folder',
onPublish: function ( done ) {
done(null, require('./package.json'));
}
});
Add generated tasks to the runner
instance:
const runner = require('runner');
Object.assign(runner.tasks, tasks);
The following tasks will become available:
Task name | Description |
---|---|
npm:config |
prints the current configuration used for generated tasks |
npm:publish |
publishes the package |
Generator accepts two arguments: base configuration and additional options.
It's an object with the following properties:
Name | Description |
---|---|
onPublish | user callback executed before actual publishing to get the data which will be written to the package.json file |
target | folder in which the package.json file will be created |
command | publish command which executes after writing package.json file |
It's an object with the following properties:
Name | Description |
---|---|
prefix | an affix placed before a task name (default is npm: ) |
suffix | a string added at the end of a task name (empty by default) |
So it's possible to change generated tasks names:
Object.assign(runner.tasks,
generator(config, {
prefix: 'package:',
suffix: ':develop'
})
);
It will add the following task:
package:publish:develop
If you have any problems or suggestions please open an issue according to the contribution rules.
runner-generator-npm
is released under the GPL-3.0 License.