4

Jenkins cos にプラグイン Gerrit Trigger をインストールしました。チームの開発者が (特定のプロジェクトに関連して) リポジトリに何かをプッシュしたときに、ビルドを自動的に開始する必要があります。ここで設定に従いました:

https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger

テスト接続は問題ありません。とにかく、何かが押されたとき、建物は「トリガー」しません。私が見ることができる唯一のものは次のとおりです。

「Manage Jenkins」の下 -> Gerrit への接続がダウンしています。設定と Gerrit サーバーを確認してください。

何か案が?

ありがとう

ランダム化

ところで、私はこれを得ました:

ところで、私はこれを得ました: コマンド "git fetch -t git@github.com:somewhere/MyProject.git $GERRIT_REFSPEC" はステータス コード 128 を返しました: 致命的: リモート参照 $GERRIT_REFSPEC が見つかりませんでした 致命的: リモート エンドが予期せずハングアップしました

 ERROR: Could not fetch from any repository
 FATAL: Could not fetch from any repository
 hudson.plugins.git.GitException: Could not fetch from any repository
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:1008)
at hudson.plugins.git.GitSCM$2.invoke(GitSCM.java:968)
at hudson.FilePath.act(FilePath.java:758)
at hudson.FilePath.act(FilePath.java:740)
at hudson.plugins.git.GitSCM.checkout(GitSCM.java:968)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1184)
at hudson.model.AbstractBuild$AbstractRunner.checkout(AbstractBuild.java:537)
at hudson.model.AbstractBuild$AbstractRunner.run(AbstractBuild.java:425)
at hudson.model.Run.run(Run.java:1376)
4

4 に答える 4

3

Gerrit プラグイン ページで説明されているトリックがあります。

通常、Gerrit によってトリガーされるようにジョブを構成した場合、ビルドは Gerrit からの情報に依存するため、特に Git プラグインを使用してワークスペースでコードをチェックアウトしている場合は、「今すぐビルド」リンクを使用できなくなります。

たとえば、ある時点で同じジョブを使用して master ブランチを構築する場合は、この制限を回避できます。Git プラグインを使用している場合は、次の手順を実行します。

GERRIT_REFSPECデフォルト値で呼び出される文字列パラメータを追加しますrefs/heads/master

このトリックを使用すると、ビルドが可能になりますが、tit によってトリガーされないため、結果は Gerrit に送信されません。

于 2012-07-18T10:04:06.233 に答える
0

変数 $GERRIT_REFSPEC が設定されていないため、これは Gerrit トリガーでは機能しません。Gerrit から変更セットを手動でトリガーする場合は、「クエリと Gerrit パッチのトリガー」を使用する必要があります。そこで、Gerrit で開いている変更を検索してビルドできます。

また、Gerrit のレビュー ブランチ (refs/for/ 参照など) に変更をプッシュした場合にのみ、ビルドがトリガーされることにも注意してください。ブランチ (refs/heads/master など) に直接プッシュした場合、コード レビューを行いたくないため、Gerrit トリガーは機能しません。ビルドを開始する URL を呼び出すか、ビルド ジョブに Git リポジトリをポーリングさせる Gerrit フックの 1 つを使用する必要があります。

于 2011-09-28T13:54:31.093 に答える
-1

You Need to start the gerrit server from the jenkin>> gerrit trigger> click on status icon.

于 2016-03-23T12:02:32.650 に答える