UNPKG

east

Version:

node.js database migration tool for mongodb, sqlite, postgres, mysql, couchbase

26 lines (21 loc) 639 B
const {promisify} = require('util'); const pTimeout = require('p-timeout'); // execute action function module.exports = function _executeAction(action, actionParams) { const executionPromise = Promise.resolve() .then(() => { if (action.length > 1) { const promisifiedAction = promisify(action); return promisifiedAction(actionParams); } else { return Promise.resolve( action(actionParams) ); } }); const timeout = Number(this.params.timeout); const timeoutError = new Error( `Migration execution timeout exceeded (${timeout} ms)` ); return pTimeout(executionPromise, timeout, timeoutError); };