Deploy ember-cli applications using rsync over ssh.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
config
tests
vendor
.bowerrc
.editorconfig
.ember-cli
.gitignore
.jshintrc
.npmignore
.travis.yml
Brocfile.js
CHANGLOG.md
LICENSE.md
README.md
bower.json
index.js
package.json
testem.json

README.md

Ember-cli-deploy-rsync

Deploy Ember CLI applications using rsync over SSH.

Installation

Run the following command in your terminal:

npm install --save-dev ember-cli-deploy-rsync

Configuration

  • dest: Rsync destination, for example /folder/
  • host: Rsync host, for example user@my.cdn.com
  • ssh: Rsync over SSH (default: true)
  • recursive: Recurse into subdirectories (default: true)
  • delete: Delete files at destination, that are not in src (default: false)
  • deleteAll: Like delete, but also delete excluded files, see rsync manpage (default: false)
  • port: Rsync SSH port
  • privateKey: Location of private key file to use for SSH connection
  • args: Array of rsync arguments

Example deploy configuration (config/deploy.js) to deploy with production and staging environments:

module.exports = function(environment) {
  var ENV = {
  };

  if (environment === 'production') {
    ENV.rsync = {
      type: 'rsync',
      dest: '/var/www/app',
      host: 'production.company.com',
      ssh: true,
      recursive: true,
      delete: true,
      args: ['--verbose', "--rsync-path='sudo -u www-data rsync'", '-ztl']
    }
  }

  if (environment === 'stage') {
    ENV.rsync = {
      type: 'rsync',
      dest: '/var/www/app',
      host: 'stage.company.com',
      ssh: true,
      recursive: true,
      delete: true,
      args: ['--verbose', '-ztl']
    }
  }

  return ENV;
};