設置したFTPサーバーにgrunt-ftp-deployでファイルをアップロードしようとしたけど、うまく動作しなかった。
原因はわからないけど、サーバーの設定かなんかで出来ない場合があるらしい。
で、以下の方法で対処した。
実行環境はMac
NcFTP Client をインストール
NcFTP Software: Download
http://www.ncftp.com/download/dlf2.html
ここのページの
Download NcFTP Client
NcFTP Client 3.2.5 for Mac OS X 10.4 to 10.6 (Intel 32-bit)
これをダウンロードして、インストール。
NcFTPPutの実行ファイルをプロジェクトにコピー
実行ファイルを探す
$ which ncftpput
出力された場所から、 ncftpput の実行ファイルをプロジェクトのディレクトリにコピー
grunt-exec から ncftpput を実行
ローカルの www ディレクトリの中身をまるごと、サーバーにアップロード
Gruntの設定
host = 'FTP_HOST_ADDR'
user = 'FTP_USER'
pass = 'FTP_PASSWORD'
dest = '/REMOTE_PATH'
exec:
upload:
command: "../ncftpput -u #{user} -p #{pass} -m -R #{host} #{dest} ."
cwd: "www"
参考:ncftpput(1) manual page
http://www.ncftp.com/ncftp/doc/ncftpput.html