Edit Page

sails.lift()

Lift a Sails app programmatically.

This does exactly what you might be used to seeing by now when you run sails lift. It loads the app, runs its bootstrap, then starts listening for HTTP requests and WebSocket connections. Useful for building top-to-bottom integration tests that rely on HTTP requests, and for building higher-level tooling on top of Sails.

sailsApp.lift(configOverrides, function (err) {

});

Or:

Usage

#
Argument Type Details
1 configOverrides Dictionary? A dictionary of config that will override any conflicting options present in configuration files. If provided, this will be merged on top of sails.config.
Callback
#
Argument Type Details
1 err Error? An error encountered while lifting, or undefined if there were no errors.

Example

#
var Sails = require('sails').constructor;
var sailsApp = new Sails();

sailsApp.lift({
  log: { level: 'warn' }
}, function (err) {
  if (err) {
    console.log('Error occurred lifting Sails app:', err);
    return;
  }

  // --•
  console.log('Sails app lifted successfully!');

});

Notes

#
  • The difference between .lift() and .load() is that .lift() takes the additional steps of (1) running the app's bootstrap (if any), and (2) emitting the ready event. The core http hook will typically respond to the ready event by starting an HTTP server on the port configured via sails.config.port (1337 by default).
  • When a Sails app is fully lifted, it also emits the lifted event.
  • With the exception of NODE_ENV and PORT, configuration set via environment variables will not automatically apply to apps started using .lift(), nor will options set in .sailsrc files. If you wish to use those configuration values, you can retrieve them via require('sails/accessible/rc')('sails') and pass them in as the first argument to .lift().

Is something missing?

If you notice something we've missed or could be improved on, please follow this link and submit a pull request to the sails repo. Once we merge it, the changes will be reflected on the website the next time it is deployed.

Reference

Reference