0

jenkinsビルドをユーザー間でどのように区別できるかを理解しようとしています。私の主なユースケースは、SVNブランチでテストジョブをビルドして実行したいユーザーです。

私には多くのユーザーがいるので、これらのジョブにユーザーとブランチを識別し、ジョブ間の衝突を防ぐための何らかの「ラベル」を付けたいと思います。同じ名前の場合、同じワークスペースディレクトリを使用して、他のジョブを削除するからです。ユーザーの仕事。

私が見つけた唯一の方法は、プログラムでジョブをコピーし、それらのプロパティ(名前やブランチなど)を変更することでした。

したがって、ジョブを整理したい場合は、ユーザーのジョブをビューで整理できるようにし、ネストされたビュープラグインを使用していますが、すべてのJenkins APIは単純なビューの作成のみを示しているため、ネストされたビューを使用します見る。だから私が思ったのは、「テンプレートビュー」をコピーしてそのプロパティを変更することでした。

REST APIまたはPython(推奨)を介してこれを行う方法はありますか?

ありがとう!

4

2 に答える 2

1

後で使用するユーザー固有の変数を透過的に提供するために、Build UserVarsPluginを使用することをお勧めします。このプラグインはいくつかの変数を提供します:

ここに画像の説明を入力してください

テンプレートプロジェクトプラグインを使用して、実際のビルドプロセスに関して必要なすべての構成でジョブを定義できます。これにより、%UserName-JobName%パターンに従って、いくつかの「ラッパー」ジョブを作成できるため、特定のユーザーのみにジョブを表示するように構成された、さまざまなビューを持つのは非常に簡単なタスクになります。ラッパージョブは、上位層のテンプレートジョブのみを実行することになっています(上位層のビルダーを使用)。

ここに画像の説明を入力してください

Hudson PersonalViewPluginも検討してください。

于 2012-11-11T22:54:39.873 に答える
0

SVNパスをパラメーターとして受け取るパラメーター化されたビルドを作成します。SVN構成で、URLを$に設定します。ワークスペースがクリアされないようにするには、実行するたびにビルドをアーカイブするようにプロジェクトを構成します。ユーザーがビルドを同時に実行できるようにする場合、Jenkinsは複数のワークスペースを作成し、物事を分離します。Build Name Setterプラグインを使用して、各ビルドにSVNパスまたは別のパラメーターのタグを付けることができます。

于 2012-11-08T19:39:53.710 に答える