寫 Ansible playbook 來作FTP上傳

要作檔案的複製,可以用 copy ,這會走 SSH 協定;網站檔案上傳,可以用 uri 模組,參數帶入 POST method ,就可以上傳檔案。

那 FTP 檔案上傳,可以怎麼做呢?

我自己想到可以用 shell/command 模組,有蠻多指令都可以做到 FTP 上傳的:

  1. ncftp: ncftp 有提供 ncftpput 可以作上傳。
  2. curl: curl 支援 FTP,可以作上傳。
  3. lftp: lftp 指令可以作上傳。

後來在 How PUT file into FTP with Ansible? 看到有網友分享的自製 FTP 模組:ftp - Transfer files and directories from or to FTP server

所以有蠻多方法可以達成的,提供出來給大家參考。