Bamboo にいくつかの大きな問題があります。
Engine Yard で実行される Rails プロジェクトを実行しています。
私のビルド戦略は次のとおりです
- ソースコードからのチェックアウト
- バンドル インストール
- rspec (テストの実行)
- ビルドにタグを付ける
(タグを作成するコードにより、新しいコミットが発生し、デプロイでタグが使用されます)
git remote remove origin
git remote add origin <my repo>
git tag Bamboo-${bamboo.buildNumber}
git push origin Bamboo-${bamboo.buildNumber}
私のデプロイでは、エンジン ヤードが機能する方法は、ブランチまたはタグに基づいてデプロイすることです (ビルド アーティファクトはありません)。
したがって、私のデプロイでは、gem https://github.com/engineyard/engineyardを使用する単一のスクリプトです
そして走る
ey deploy --environment <staging> --tag=Bamboo- ${bamboo.buildNumber} --app <my app>
Engine yard は、すべてのレールの「作業」を行い、ビルドの準備と展開を行います。実際に Bamboo がテストを実行し、タグ ビルドが機能するかどうかが必要です。
問題
私は bitbucket ソース管理を使用しており、マスターへのコミットで竹のビルドをトリガーするようにフックを構成しました。
問題のステップ 4) は、bitbucket に別のビルドを実行させるタグをプッシュしています。
その結果、竹が無限に構築されます。
これを解決する方法を検討しています。Bamboo の 'Exclude Changesets' を使用して、特定のコミット メッセージを除外できると考えました
だから私の4)は今のようになります
git remote remove origin
git remote add origin <my repo>
#create tag
git tag -a Bamboo-${bamboo.buildNumber} - m 'bamboo build'
#push tag
git push origin Bamboo-${bamboo.buildNumber}
ただし、その合流ページのコメントによると。Changsets を除外するオプションは表示されなくなりましたか?
この無限の構築ループを止める方法がわかりません。