You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Simply declare npm scripts with a name of the form hook:EVENT where EVENT is
the name of a serverless hook event, i.e.:
hook:before:offline:start: Run script before serverless offline launches.
This can be particularly useful to setup the local environment, such as launching
a local kinesis and initializing it by creating some streams.
hook:after:offline:start: Run cleanup scripts after serverless offline terminates.
hook:before:package:initialize: Run script before the packaging initialization.
Installation
First, add the plugin to your project:
npm install --save-dev serverless-hooks
Then, inside your project's serverless.yml file add serverless-hooks to the top-level
plugins section. If there is no plugin section you will need to add it to the file.
plugins:
- serverless-hooks
Configuration
Plugin behavior may be configured by adding keys to the serverless-hooks section in the
top-level custom section.
These are the configuration entries and their default values:
custom:
serverless-hooks:
hookPrefix: hook # The npm script prefix to indicate a serverless hook scriptrunAllOptions: # See https://github.com/mysticatea/npm-run-all/blob/HEAD/docs/node-api.md for detailsstderr: # boolean to enable stderr, or path to filestdout: # boolean to enable stdout, or path to filestdin: # boolean to enable stdin, or path to file
Execution
When scripts are executed, the environment variable SLS_CONTEXT contains a path to
a JSON file with the contents of the serverless object. The available properties are:
invocationId: Unique GUID for the current serverless invocation
version: Serverless framework version
cliCommands: Array with provided CLI commands (e.g. [ 'offline' ])
cliOptions: Object with provided CLI options
servicePath: Path to directory containing serverless.yml file
service: Object with contents of resolved serverless.yml file