8

現在含まれているような、新しいコミットの git リポジトリをポーリングするbuildbotプラグインはありますchanges.SVNPollerか?

私が見つけた最も近いものはgit_buildbot.pyですが、それはポストコミットフックとして機能するため、私のセットアップでは機能しません (Github を使用し、github のポストコミットが到達できないマシンで buildbot を使用します) - 単純に git リポジトリをポーリングします完全に機能します。

現在、1 時間に 1 回ビルドを実行していますが、何かが変更されない限り、テストを実行する意味はありません。

4

3 に答える 3

9

更新: Buildbotプロジェクトの親切な人々は、バージョン0.8.2の時点でGitPollerを公式の変更ソースにし、オリジナルにいくつかの改良を加えました。


私たちの会社も同様の状況にあり、GitHubのコミット後フックでビルドマシンにアクセスできません。GitPollerのように使用できる変更ソースを作成しましたSVNPoller

ここで見つけることができます:http://github.com/wimba/buildbot/blob/master/buildbot/changes/gitpoller.py

そしてこのように使用されます:

from buildbot.changes.gitpoller import GitPoller
c['change_source'] = GitPoller('git@example.com:foobaz/myrepo.git',
                               branch='great_new_feature')

それは(場所を構成可能に)動作するローカルリポジトリを作成し、それはでのみテストされてgit 1.7いるので、マイレージは異なる場合があります。

うまくいけば、それはいつか適切なBuildbotプロジェクトに引き込まれるでしょうが、これまでのところ私たちのために働いており、他の人にも役立つことを願っています:)

于 2010-06-18T18:07:20.060 に答える
0

私は gitpoller.py アプローチが好きですが、現時点では少し制限されていることがわかったので (たとえば、リビジョンやプロジェクトの引数を送信しないなど)、別の解決策を見つけました。

リモートから複製された独自のリポジトリと、マージ後のフックによって呼び出される git_buildbot.py があります (git_buildbot.py で説明されています)。スリープ中の小さなループがあり、マージ後のフックをトリガーするレポを git でプルします。

于 2010-08-31T14:46:01.173 に答える