lftpを使用してTravis CIからWebサイトを展開しています。ビルドの前にビルドプロセスが存在するため、ビルドディレクトリが存在し、ftpサーバのルートにプッシュされます。lftpミラーを使用してダウンタイムを防ぐ
lftp $FTP_URL -e "glob -d mirror build . --reverse --delete-first --parallel=10 && exit"
は、これはかなりうまく動作しますが、私はので、私のウェブサイト上のファイルを行方不明のダウンタイム/一時的なPHPのパースエラーを持つことが嫌い。その問題を解決する最善の方法は何ですか?
私の最初のアプローチは、一時ディレクトリを設定するオプションでしたが、lftpのmanページには、一時ファイルのための唯一の選択肢があると言います。私はまだこのオプションを試しましたが、それは役に立たなかった。
私の2番目のアプローチは、一時フォルダーを使用してルートを置き換えるために "ミラービルドtemp"を使用することでした。ここでの問題は、rm -rf *のような古いファイルやフォルダを削除している間はtempフォルダを除外できないということです。
xfer:use-temp-file設定を試しましたか? – lav
Webルートの親ディレクトリにアクセスできますか? – lav
ディレクトリの一時ファイル設定が機能しません。私は親ディレクトリへのアクセス権がありません、アイデアは各cronjobのための別々のアクセスを持っていた - 親ディレクトリへのアクセスを与えることは私の問題を解決するかもしれませんが、ftpユーザーは他のプロジェクトへのアクセス権を持っています。 – redaxmedia