Google App Engineで実行される継続的統合ツールはありますか?AppUngineで継続的インテグレーションツールを実行
答えて
私はそうは思わない。 Google App Engineのセキュリティ保護されたサンドボックス環境は、私が知っているすべてのCIエンジンの要件と互換性がないように見えます(ファイルシステムへの書き込みは、チェックアウトソース、コンパイル、テスト中のログ、 、など)。
私がコメントしたように、Amazon EC2 はで、CIエンジンを実行するのに適しています。この目的のために多くの企業が使用しています。あなたは本当にこの方向を見るべきです。
アプリエンジンのアプリは、最終的にはPythonコードまたはJavaコードです。お気に入りのCIツールを使用してアプリケーションを構築し、単体テストを実行し、開発サーバーを使用してローカルのいずれかのテストサーバーに、または本当にしたい場合はクラウドに展開できます。ために?
EDIT:アプリエンジンで実行されるCIについての質問ですが、のアプリエンジンのCI ではなく、私の答えはほとんど役に立たないです。
私はどのように質問をより具体化できるか分かりません。 Google App Engineで動作するCIです。 IE something-ci.appspot.com私にハドソンか何かを教えてください。 Google App Engineには、ファイルシステムに書き込むことができないなどの非常に固有の定数があります。そのため、ハドソンは明らかにJavaコードであってもアプリケーションエンジンでは実行できません。 –
gotcha。私の答えは役に立たない。 –
アプリエンジンで直接これは可能ではないと思います。 AppEngineがどのように機能するかについての私の理解(かなり限定されています)は、これを達成するために一緒に働く一連のサービスを持つことが可能であることを示しています。基本的には、ストレージシステムのプロキシであるサービスと、ビルドサービスのプロキシであるサービス(どちらもAppEngineにはない)が必要です。 AppEngineは、関連するコピーを実行してこれらのサービスを監視し、メタファを構築することができます。
ビルドされているものがアプリケーション内にあれば、それを自動的に展開してAppEngineサービスを使用して接続し、テストすることができます。
私はローカルCIインスタンスを持つよりも効果的だとは思っていません。少なくとも短期間ではセットアップやメンテナンスがより複雑になります。
また、私の現在のAppEngineの理解は、私がGoogle Waveや他の小さなプロジェクトで使っていたものに限られています。
はい、新しいクライアントを新しいバージョンに送信するために、[現在実験中の]トラフィック分割機能 をcookieオプションとともに使用できます。
https://developers.google.com/appengine/docs/adminconsole/trafficsplitting
バージョンにアクセスするために、すべての新しいクライアントをしたいとき だけの短期を設定し、要求フィルターを持って、 、それをテスト、ステージングにあなたの新しいバージョンを展開し、場所にあなたの現在のバージョンのままにし、すべての新しいクライアントに対してリダイレクトされたリダイレクトCookieが存在します。
設定する前にこのクッキーをチェックすると、 既存のクライアントにはすべて古いバージョンが表示され、新しいクライアントにはすべて新しいバージョンが適用されます。
最新のCookie値をmemcached-backed-by-ds {有効期限を使用してください!}に保存すると、1つのリクエストフィルタで継続的な統合を実装できます。データストアのシングルトンを新しいトラフィック分割クッキーに設定するだけでよいのです。
また、git pushを使用してデプロイメントをトリガーできるようになったので、Appengine環境でCIを実行することがこれまで以上に簡単になりました!!私は、新しいコンピューティングエンジンリリースでは、新しいバージョンを導入する前に自動的にあなたのmavenテストを実行すると信じています。/win/https://cloud.google.com/tools/repo/push-to-deploy – Ajax
最近、Cloudbeesはこのfonctionnalityを持参:
Google App Engineのユーザーが今appengine.cloudbees.comにサインアップすることにより、クラウドでジェンキンス継続的インテグレーションを実行することができます。 Jenkinsはプロジェクトのソースコードを監視して変更を行い、必要なビルドとテストを実行し、問題があればチームに通知するか、すべてがうまくいくとアプリケーションをGoogle App Engineに自動的にデプロイします。
- 1. 継続的インテグレーションツール
- 2. バックグラウンドワーカーを継続的に実行
- 3. アプリケーションの継続的な実行
- 4. サーバでPHPプログラムを継続的に実行するには?
- 5. Parse(server)でスクリプトを継続的に実行しています
- 6. CMDでアプリケーションを継続的に実行する方法は?
- 7. has_many:rspecの実行時に継承レコードが永続的でない
- 8. Webアプリケーションを継続的に実行する
- 9. 継続的に変化するロジックを実行
- 10. D3.js:継続的にトランジションを実行しますか?
- 11. LinuxプロダクションサーバにC/C++実行可能ファイルを継続的にデプロイ
- 12. 継続的インテグレーションウェブサービス
- 13. AndroidでバックグラウンドでGoogle Voiceを継続的に実行する方法
- 14. コンテンツページレスポンス終了中マスターページの継続実行
- 15. 継続的インテグレーション - ベストプラクティス
- 16. 継続的なマウスクリックイベント
- 17. AS3ボタンを押しながらコードを継続的に実行iOS/Android用
- 18. Node.js REPL継続行
- 19. Java/Spring Webプロジェクトで継続的にデプロイするための継続的インテグレーションサーバ
- 20. サービスを継続的に実行するAndroidで定期的にサービスを開始する
- 21. 時間のためのCMDデータロガーとしてのPython(継続的に実行)
- 22. ASP.NET継続的な学習
- 23. 継続的インテグレーションインフラストラクチャの展開
- 24. 継続的なJavaScriptテスト
- 25. Pythonコードベースの継続的インテグレーションシステム
- 26. 継続的な通知
- 27. 継続的インテグレーション/ Cruisecontrolのアドバイス
- 28. Glimpse PagerType.ContinuousPaging継続的ロード
- 29. Azureの継続的デプロイ
- 30. git-flowによる継続的な統合と継続的な配信
どのプラットフォーム、Java、またはPythonですか?あなたは、あなたのアプリケーションエンジンプロジェクトを継続的にテストするために使用できるツールを探していますか、アプリエンジンで実行されるCIツールを探していますか?何か他のものをテストするために使用できますか? –
私はこの質問を「アプリケーションエンジンで動作するCIツール」と理解していますか?これがあなたが探しているものなら、私の経験ではEC2がそれに適しています。 –
@Pascalあなたの助言に感謝します。私は自由に滞在したいと考えていました。小規模なプロジェクトではEC2のコストを検討します。 –