Deploy system for PM2
This is the module that allows to do pm2 deploy
.
Documentation: http://pm2.keymetrics.io/docs/usage/deployment/
Instalation
$ npm install pm2-deploy
Programmatic Usage
var deployForEnv = require('pm2-deploy').deployForEnv;
// Define deploy configuration with target environments
var deployConfig = {
prod: {
user: 'node',
host: '212.83.163.168',
ref: 'origin/master',
repo: 'git@github.com:Unitech/eip-vitrine.git',
path: '/var/www/test-deploy'
},
dev: {
user: 'node',
host: '212.83.163.168',
ref: 'origin/master',
repo: 'git@github.com:Unitech/eip-vitrine.git',
path: '/var/www/test-dev'
}
};
// Invoke deployment for `dev` environment
deployForEnv(deployConfig, 'dev', [], function (err, args) {
if (err) {
console.error('Deploy failed:', err.message);
return console.error(err.stack);
}
console.log('Success!');
});
// Rollback `prod` environment
deployForEnv(deployConfig, 'prod', ['revert', 1], function (err, args) {
if (err) {
console.error('Rollback failed:', err.message);
return console.error(err.stack);
}
console.log('Success!');
});
API
Table of Contents
deployForEnv
Deploy to a single environment
Parameters
-
deployConfig
object object containing deploy configs for all environments -
env
string the name of the environment to deploy to -
args
array custom deploy command-line arguments -
cb
DeployCallback done callback
Returns boolean return value is always false
DeployCallback
Type: Function