Files
pnpm/packages/lifecycle
2019-06-02 21:03:53 +03:00
..
2019-05-19 20:05:11 +03:00
2019-06-02 21:03:53 +03:00
2019-05-07 02:10:06 +03:00
2018-12-15 22:56:20 +02:00

@pnpm/lifecycle

Package lifecycle hook runner

npm version

Installation

<pnpm|npm|yarn> add @pnpm/logger @pnpm/lifecycle

Usage

import runLifecycleHook, {runPostinstallHooks} from '@pnpm/lifecycle'

const targetPkgRoot = path.resolve('node_modules/target-pkg')
const pkg = require(path.join(targetPkgRoot, 'package.json'))

// Run a specific hook
await runLifecycleHook('preinstall', pkg, {
  pkgId: 'target-pkg/1.0.0',
  pkgRoot: targetPkgRoot,
  rawNpmConfig: {},
  rootNodeModulesDir: path.resolve('node_modules'),
  unsafePerm: true,
})

// Run all install hooks
await runPostinstallHooks({
  pkgId: 'target-pkg/1.0.0',
  pkgRoot: targetPkgRoot,
  rawNpmConfig: {},
  rootNodeModulesDir: path.resolve('node_modules'),
  unsafePerm: true,
})

API

runLifecycleHook(stage, packageJson, opts): Promise<void>

runPostinstallHooks(opts): Promise<void>

License

MIT © Zoltan Kochan