3

GitLab 8.3.2 と TeamCity 9.1.6 を使用しています。JetBrains TeamCity CI サービスをセットアップしました。変更が GitLab にプッシュされると、TeamCity でビルドがトリガーされます。

マージリクエストが作成されたときにもビルドをトリガーしたいと思います(このビルドは、マージボタンを押しても問題が発生しないことを保証できると理解しています)。

TeamCity のブランチ仕様を次のように設定しました。

+:refs/heads/*
+:refs/(merge-requests/*)

TeamCity でマージ リクエストを確認できますが、実際にはビルドされません。

GitLab のマージ リクエストには、「xxxx の CI ビルドが保留中です」と表示されます。ただし、詳細の表示リンクにはビルド番号が含まれていません。これは、TeamCity を検索して一致するビルドを見つけ、最初にトリガーされなかったために見つからないためだと思われます。

TeamCity で構成されたビルドトリガーがありません。(私はもともと VCS トリガーを持っていましたが、GitLab がビルドをトリガーしていることに気付いてからオフにしました。)

マージ リクエストが TeamCity でビルドをトリガーし、GitLab がマージ リクエストでビルドの結果を表示するように設定するにはどうすればよいですか。

4

2 に答える 2

0

私はあなたに似た私の問題をなんとか解決しました。実際には、GitLab が提供する指示に従っています

Teamcity のビルド構成では、ビルド形式番号 %build.vcs.number% を使用する必要があります。また、すべてのブランチの監視を構成して、マージ リクエストのビルドを構成する必要があります。その設定は vsc ルートの詳細設定にあります。

  1. Teamcity 側では、ビルド番号の形式を %build.vcs.number% として設定する必要があります
  2. Teamcity でブランチ仕様を構成して、すべてのブランチを構築します。私の場合は +:refs/heads/(*) を使用しました。

マージ リクエストが作成されると、teamcity で同じ build.vcs.number がチェックされ、ビルドが完了すると、ステータスが gitlab のマージ リクエストで更新されます。

于 2016-08-19T09:44:03.027 に答える