puppet-run icon indicating copy to clipboard operation
puppet-run copied to clipboard

Breaking API change: Export promise

Open andywer opened this issue 6 years ago • 0 comments

Instead of having to manually call puppet.exit(), make it a convention-based API:

Each JS/TS entrypoint must export default a promise or a function returning a promise. When this promise resolves, the script is considered to be finished.

Allow manual dynamic tasks by calling puppet.run(functionOrPromise).

If you export / run a function, we can pass the original shell argv and runtime data created by plugins.

For your convenience: Consider that the script might be a CommonJS module, not an ES module. Also gracefully deal with entrypoint functions that don't return a promise.

andywer avatar Oct 18 '19 07:10 andywer