Awesome
shipit-assets
Asset syncing tasks for Shipit.
Features:
- Works via shipit-cli and grunt-shipit
Install
npm install shipit-assets
Usage
Example shipitfile.js
module.exports = function (shipit) {
require('shipit-assets')(shipit);
shipit.initConfig({
default: {
assets: {
paths: ['public/storage'],
options: {
ignores: ['cache']
},
}
},
});
};
Push your local assets to remote:
shipit staging assets:push
Pull your remote assets to local:
shipit staging assets:pull
Example Gruntfile.js
grunt.initConfig({
shipit: {
options: {
workspace: '/tmp/github-monitor',
deployTo: '/tmp/deploy_to',
repositoryUrl: 'https://github.com/user/repo.git',
ignores: ['.git', 'node_modules'],
keepReleases: 2,
key: '/path/to/key',
shallowClone: true,
assets: {
'paths': [
'public/uploads',
'backup'
]
},
},
staging: {
servers: 'user@myserver.com'
}
}
});
grunt.loadNpmTasks('grunt-shipit');
grunt.loadNpmTasks('shipit-deploy');
grunt.loadNpmTasks('shipit-assets');
To run shipit-assets you have to call:
grunt shipit:staging assets:push
Options (shipit.config.assets
)
assets.paths
Type: Array
Paths to sync between remote and local. Paths are relative to project root.
assets.localPaths
Type: Array
If your local paths are mapped differently than remote, you may specify here. If specified, the array must have the same length as assets.paths
. Default: assets.paths
assets.options
Options to pass to shipit.remoteCopy
.
Workflow tasks
- assets:push
- Push assets from local to remote.
- Emit event "assetsPush".
- assets:pull
- Pull assets from remote to local.
- Emit event "assetsPull".
License
MIT