サイズがそれぞれ約 150Kb の一連のバイナリ アセット (swf ファイル) があります。自宅のコンピューターでローカルに開発しており、レビューのために定期的に展開したいと考えています。私の現在の戦略は次のとおりです。
- .swf を hg (mercurial) リポジトリでもある転送ディレクトリにコピーします。
hg push
スライスホスト VPN への変更ssh
私のスライスホスト VPN にcd
私の転送ディレクトリにhg up
su www
変更されcp
たファイルは、表示用にパブリック フォルダーに入れられます。
プロセスを自動化したい。最良のシナリオは、次のようなものです。
- .swf を「クイック デプロイ」ディレクトリにコピーします。
- 単一のローカル スクリプトを実行して、上記のすべてを実行します。
私は、に興味を持っています:
su www
パブリック Web ディレクトリにファイルを転送する必要があるため、パスワードをどこに配置するかについてのアドバイス。- ローカルマシンとサーバー間の責任の分割がどのように処理されるか。
これらのタイプの変更の改訂履歴は本当に必要ないので、rsync を使用することは hg よりも優れたツールだと思います。これは、python スクリプト、シェル スクリプトとして記述できますが、ベスト プラクティスと見なされます。
最終的には、これを、ささやかな展開のニーズを処理できるシステムに組み込みたいと考えています。おそらく、このような状況や他のタイプの状況を処理するオープンソースの展開システムがあるでしょうか? 私はおそらくこの現在のニーズに合わせて独自にロールバックしますが、長期的には比較的柔軟なものが必要です.
注:私のホーム開発用コンピューターは OS X で、ターゲット サーバーは最近の Ubuntu です。私はPythonベースのソリューションを好みますが、これがシェルから処理されるのが最適な場合は、そのようにまとめても問題ありません。