| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Set of deployment tasks for Shipit based on git and rsync commands.
Features:
npm install shipit-deploy
If you are deploying from Windows, you may want to have a look at the wiki page about usage in Windows.
module.exports = function (shipit) {
require('shipit-deploy')(shipit);
shipit.initConfig({
default: {
workspace: '/tmp/github-monitor',
deployTo: '/tmp/deploy_to',
repositoryUrl: 'https://github.com/user/repo.git',
ignores: ['.git', 'node_modules'],
keepReleases: 2,
deleteOnRollback: false,
key: '/path/to/key',
shallowClone: true
},
staging: {
servers: 'user@myserver.com'
}
});
};To deploy on staging, you must use the following command :
shipit staging deploy
You can rollback to the previous releases with the command :
shipit staging rollback
Type: String
Define a path to an empty directory where Shipit builds it's syncing source. Beware to not set this path to the root of your repository as shipit-deploy cleans the directory at the given path as a first step.
Type: String Default: same as workspace
Define directory within the workspace which should be deployed.
Type: String
Define the remote path where the project will be deployed. A directory releases is automatically created. A symlink current is linked to the current release.
Type: String
Git URL of the project repository.
If empty Shipit will try to deploy without pulling the changes.
In edge cases like quick PoC projects without a repository or a living on the edge production patch applying this can be helpful.
Type: String
Tag, branch or commit to deploy.
Type: Array<String>
An array of paths that match ignored files. These paths are used in the rsync command.
Type: Boolean
Whether or not to delete the old release when rolling back to a previous release.
Type: String
Path to SSH key
Type: Number
Number of releases to keep on the remote server.
Type: Boolean
Perform a shallow clone. Default: false.
Type: Boolean
Update submodules. Default: false.
type: Object
Custom git configuration settings for the cloned repo.
Type: String
Log format to pass to git log. Used to display revision diffs in pending task. Default: %h: %s - %an.
Type: String Optional
When deploying from Windows, prepend the workspace path with the drive letter. For example /d/tmp/workspace if your workspace is located in d:\tmp\workspace. By default, it will run rsync from the workspace folder.
Type: String
Parameter to pass to cp to copy the previous release. Non NTFS filesystems support -r. Default: -a
Several variables are attached during the deploy and the rollback process:
All options described in the config sections are available in the shipit.config object.
Attached during deploy:fetch task.
You can manipulate the repository using git command, the API is describe in gift.
Attached during deploy:update and rollback:init task.
The current release dirname of the project, the format used is "YYYYMMDDHHmmss" (moment format).
Attached during deploy:init, rollback:init, and pending:log tasks.
The remote releases path.
Attached during deploy:update and rollback:init task.
The complete release path : path.join(shipit.releasesPath, shipit.releaseDirname).
Attached during deploy:init, rollback:init, and pending:log tasks.
The current symlink path : path.join(shipit.config.deployTo, 'current').
MIT
| Back | FazBrowse Home | New Git URL |