さて、私はWindowsでBambooを実行した経験があまりありませんが、これを試してみます:)バージョン2.6のBamboo管理者ガイドに案内することから始めましょう。
https://confluence.atlassian.com/display/BAMBOO026/Bamboo+Administrator%27s+Guide
計画とエージェントに関するセクションを確認してください。
お持ちのBambooのバージョンでは、プランは基本的にスクリプトで構成されています。これは、AntスクリプトまたはMavenスクリプト、あるいはバッチまたはbashスクリプトにすることができます。しかし、あなたは1つしか得られません。Bambooの新しいバージョンでは、複数のスクリプトを実行できます。アップグレードを検討する必要があります。
ただし、どうしてもアップグレードできない場合は、これらの各mavenタスクを実行する単一のモノリシックスクリプトを記述し、DeployLocal.batファイルを実行してから、両方のJBossインスタンスを起動する必要があります。(Bambooがソースコードのチェックアウトビットを処理します。)次に、スクリプトを実行するためにBambooでプランを構成する必要があります。
では、戦略について話しましょう!
+ Bambooサーバーでコードをビルドし、それをリモートWindowsサーバーにコピーしますか?または、リモートWindowsサーバーでビルドしますか?
まず、Bambooライセンスがリモートエージェントをサポートしているかどうかを判断する必要があります。Bambooにログインし、[管理]をクリックします。次に、左側の余白にある[システム]メニューまで下にスクロールします。「ライセンスの詳細」をクリックします。「サポートされているリモートエージェントの数」の下の値は0より大きいですか?
もしそうなら:
イェーイ!Windows展開サーバーにリモートエージェントをインストールし、機能を使用してそのリモートエージェントで実行するように計画を構成できます。これは、Bambooでプランを実行すると、すべてのソースコードのチェックアウト/ビルド/スクリプトがWindowsデプロイサーバーで実行されることを意味します。あなたは自分自身にたくさんの仕事を節約しました!
そうでない場合:
Bambooサーバーでコードをビルドしてから、デプロイサーバーに転送する必要があります。次のことを行う方法を理解する必要があります。
BambooサーバーからWindowsサーバーにファイルを転送する方法。検討する可能性のあることの1つは、一方のサーバーでNFSファイル共有を設定し、もう一方のサーバーにマウントすることです。または、いずれかのマシンにFTPサーバーをセットアップします。
BambooサーバーからWindowsサーバーでコマンドを実行する方法。これにより、DeployLocal.batファイルを実行してJBossを起動できます。Unix環境では、これはsshを使用して行うのはかなり簡単です。Windowsでは--ええと--多分あなたはいくつかのWindowsのぞき見を調べるべきですか?以前、 MobaSSHサーバーを使用してWindowsマシンでバッチファイルをリモートで実行することができましたが、MobaSSHは、BambooマシンがUnixの場合にのみ意味があります。
ビルド後にコードをパッケージ化して、BambooサーバーからWindowsサーバーにコピーできるようにする方法。これは、Mavenビルドの出力を圧縮してWindowsサーバーで解凍するのと同じくらい簡単です。
すべてをまとめる方法:コードをビルド、パッケージ化、トランスポート、およびアンパックするスクリプトを記述してから、DeployLocal.batおよびjbossスクリプトをリモートで実行します。
+ Bambooプランで複数のリポジトリからコードをチェックアウトするにはどうすればよいですか?
残念ながら、Bamboo 3.3は、ジョブが複数のリポジトリからソースコードをチェックアウトできるようにする最初のバージョンです。ここには、最良から最悪の順に3つのオプションがあります。
新しいバージョンのBambooにアップグレードします。あなたははるかに遅れているので、苦痛なプロセスになる可能性がありますが、おそらく努力する価値があります。誰かが最終的にそれをアップグレードしなければならないでしょう-後でより今より良いです。
svn:externalsでチートします。Subversionリポジトリの1つに新しいディレクトリを作成し、Bambooがチェックアウトする必要がある6つのリポジトリのそれぞれへの参照を使用してsvn:externalsプロパティを設定します。新しいディレクトリをチェックアウトするようにBambooを設定します。出来上がりです。これらのsvnリポジトリのそれぞれが自動的にチェックアウトされます。
この制限を回避するためのその他のハックを考えてください。たとえば、リポジトリごとにsvnクライアントを1回実行するスクリプトを作成します。
+これは動作するまでに時間がかかる場合があります。
はい。同僚がすでに設定しているすべての計画の構成とスクリプトを確実に調べる必要があります。同僚は、この作業のすべてまたはほとんどをすでに行っている可能性があります。