GAE アプリの「QA 環境」をセットアップ中です。この QA 環境は、専用の IP アドレスを持つホーム ネットワーク上の小さなサーバーです。Ant スクリプトを作成して、SVN リポジトリからプロジェクトをチェックアウトし、ビルド サーバーでビルドしてから、(自宅の LAN 経由で) 「リモート」で QA アプリ サーバーにデプロイします。
Tomcat ではscp
、Web アーカイブをマシンのwebapps/
ディレクトリに保存するだけで済みます。ホット デプロイを構成できるため、QA デプロイに通常必要なのはそれだけです。
しかし、私は GAE を初めて使用するので、Ant を介してこのようなリモート展開を実現する方法がわかりません。私が考えることができる最高のものは(やや複雑ですが)次のようになります。
- いつものように、buildserver で WAR をチェックアウトしてビルドします。
scp
QAマシンのどこかにあるステージングディレクトリへのWAR。いう192.168.1.55:/opt/gae/staging
- クライアントが特定の API をヒットするのをリッスンするそのマシン (Tomcat または Jetty によってホストされている可能性があります) で軽量の RESTful Web サービスを実行します
http://192.168.1.55:8080/GaeRemoteApi/deploy
。リクエスト ハンドラーがこの URL のリクエストを受け取ると、シェル コマンドを開始して WAR を正しいディレクトリにコピーし、実行appcfg.sh -upload
して実際に WAR を QA アプリ サーバーにデプロイします。
私はこれを 1 日か 2 日で動作させることができると確信していますが、GAE がより簡単な (焼き付けられた) ソリューションで出荷されているかどうか疑問に思っていました。または、新鮮な目がもっと簡単なことを考えることができれば。前もって感謝します!