Deploy a folder using FTP. It uploads differences only. It can handle server generated files mixed with the uploaded ones.
This plugin requires Grunt ~0.4.1
If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:
npm install grunt-diff-deploy --save-dev
Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:
grunt.loadNpmTasks('grunt-diff-deploy');
In your project's Gruntfile, add a section named push
to the data object passed into grunt.initConfig()
.
grunt.initConfig({
push: {
options: {
// Task-specific options go here.
},
your_target: {
// Target-specific file lists and/or options go here.
},
},
})
Type: String
Default value: localhost
Host to connect to.
Type: String
Default value: .
If you want to upload files to a subdirectory of the remote computer, specify the path here.
Type: Boolean
Default value: false
The task issues a CHMOD command to the server for each file & folder. If the remote host does not have implemented / actived that feature it will ignore the error messages.
This option allows you to stop these tries if anyhow they're not needed.
The most common usage of this task: uploading to a host the contents of a folder
called deploy
, building the routes taking deploy
as the base path.
grunt.initConfig({
push: {
options: {
host: 'example.com',
},
files: [
{
src: ['**', '**/.*'],
cwd: 'deploy',
expand: true,
},
],
},
})
Same as before, but uploading all files to a subfolder of the host.
grunt.initConfig({
push: {
options: {
host: 'example.com',
remoteBase: 'mysubfolder1/mysubfolder2',
},
files: [
{
src: ['**', '**/.*'],
cwd: 'deploy',
expand: true,
},
],
},
})
In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.
- 2016-02-22 v0.3.1 Specify version of grunt needed.
- 2013-12-06 v0.3.0 Add option to disable CHMOD commands. Ignore CHMOD errors. Fixes #1.
- 2013-12-05 v0.2.6 Fix octal constant.
- 2013-12-05 v0.2.5 Fix perms sending.
- 2013-11-21 v0.2.4 Add a log line with the dest host.
- 2013-11-21 v0.2.3 Fix recursion level in async calls.
- 2013-11-21 v0.2.2 Fix output logs calcs.
- 2013-11-21 v0.2.1 Fix package URLs.
- 2013-11-21 v0.2 Remove base configuration (guess it from the dest path). Fix FS stat problems.
- 2013-11-21 v0.1.1 Fix problem when opening too many files.
- 2013-11-21 v0.1.0 Release initial push task.