3

最初の段階で VCS タグ付け (または VCS 分岐) タスクを含むビルド プランを作成しようとしています。その後、新しく作成されたタグ (またはブランチ) を使用してそこからコードをチェックアウトします (リポジトリは SVN)。

タグ/ブランチ名にプラン変数を使用します - ${bamboo.repoBranch}- この変数はリポジトリ URL でも使用されます。タグ付け/分岐タスクが実行されるまでこの URL が有効にならないことは理解していますが、その URL からチェックアウトしようとするタスクは後の段階にあります。

私が理解していることから、Bamboo がすべての定義済みリポジトリの変更をチェックするコード変更検出フェーズのようなものがあります (プランで参照されている順序に関係なく、プランでまったく使用されていない場合でも)。これが私のアプローチがうまくいかない理由だと思いますが、それは正しいですか?

これが私が得る例外です:

com.atlassian.bamboo.repository.InvalidRepositoryException: svn:

at 

com.atlassian.bamboo.repository.svn.SvnRepository.detectCommitsForUrl(SvnRepository.java:527)

at 

com.atlassian.bamboo.repository.svn.SvnRepository.collectChangesSinceLastBuild(SvnRepository.java:278)

私が達成しようとしている別の方法は、タグ/ブランチを作成するプランと、新しく作成されたタグ/ブランチを使用するそのプランの子プランを持つことです。これに関する問題は、プラン変数を子プランに渡すことができないことです。Run Customized を使用して値をオーバーライドし${bamboo.repoBranch}、オーバーライドされた値を子プランに渡したいと考えています。私が読んだ回避策は、Bamboo REST API を使用して次の実行計画をキューに入れるスクリプト タスクを使用することですが、これはあまり洗練された解決策ではないようです。

私が達成しようとしていることに対する他のアプローチは役に立ちます。

ありがとう

4

0 に答える 0