[英]Is there any good grunt ftp plugin?
我尝试过grunt-ftpush
和grunt-ftp-deploy
但两者都无法正常工作。 我遇到了烦人的烦恼。 FTP任务似乎非常重要,我不能谷歌工作一个奇怪。
更新
这是grunt-ftp的设置
ftp: {
options: {
host: 'myhostname',
user: 'myusername',
pass: 'mypassword'
},
upload: {
files: {
'codebase/myprojectfolder': 'build/*'
}
}
}
我希望我的本地文件夹build
将被复制到服务器,但是我收到了一个错误
Fatal error: Unable to read "build/scripts" file (Error code: EISDIR).
文档很差,所以我不知道如何上传包含文件夹的文件夹。
我尝试了很多FTP插件,在我看来,只有ftp_push对我来说已经足够了。 所有其他插件都位于小地图上,这似乎有些错误(选择要上传的文件时)。 此外,使用单独的文件来处理身份验证密钥的想法没有可行的使用:如果我们想将FTP数据存储在外部JSON文件中并将其放在我们的Gruntfile.js中,那么根本不可能......开发人员应该自己选择如何处理身份验证而不依赖于外部身份验证系统。
无论如何,这个项目还活着,Robert-W很快就解决了很多问题:当我们开发时,它也是一个很大的优势。 完全死的项目真的很痛苦。
我一直在寻找一种实际的工作方式来推送单个文件很长一段时间,但我来使用一个shell脚本来进行ftp调用并使用grunt-exec
( npm链接 )运行脚本。 这似乎比让任何ftp插件工作简单得多。 这适用于任何* nix系统。
script.sh
ftp -niv ftp.host.com << EOF
user foo_user password
cd /path/to/destination
put thefilepush.txt
EOF
Gruntfile.js
exec: {
ftpupload: {
command: './script.sh'
}
}
是的grunt-ftp和grunt-sftp-deploy对我来说效果很好。
grunt.initConfig({
ftp: { // Task
options: { // Options
host: 'website.com',
user: 'johndoe',
pass: '1234'
},
upload: { // Target
files: { // Dictionary of files
'public_html': 'src/*' // remote destination : source
}
}
}
});
grunt.loadNpmTasks('grunt-ftp');
grunt.registerTask('default', ['ftp']);
在追踪旧的或错误的信息后,我终于得到了grunt-ftps-deploy,用于将单个文件上传到docker中的远程服务器。 这是一项艰巨的任务:
ftps_deploy: {
deploy: {
options: {
auth:{
host:'xx.xx.xx.xx',
authKey: 'key1',
port: 22,
secure: true
},
silent:false
//progress: true
},
files: [{
expand: true,
cwd: './',
src: ['./js/clubServices.js', './js/controllers.js', './css/services.css'],
dest: '/data/media/com_memberservices/',
}]
}
}
最初我刚刚收到没有文件传输响应。 让它工作的关键是在数组中正确指定“src”文件。 我发现的所有信息都没有专门解决这个问题。 希望这有助于其他人。 请参阅下面的更新
yoda57
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.