2012-02-10 5 views
2

をトリガーshortDescriptionジェンキンスにおけるリモートAPIジョブIがビルドパラメータを提供する方法を知っている提供:は、ユーザ名と

wget --post-data='json={"parameter": {"name": "testparam", "value": "HELLO"}}' http://jenkins/job/Job1/build?delay=0sec 

をしかし、それはwgetの/カール経由ジェンキンスリモートAPIのビルド要求にshortDescriptionとユーザー名を提供することが可能です?

jsonまたはxmlでどのように見えるのですか?ネットにマニュアル/ガイダンスはありますか?

Trigger dynamic set of jobsに記載されている問題と共にこれを使用します。私は呼び出しジョブ名とビルド番号でトリガージョブを提供したい。

答えて

2

ブラウザでJenkins CLI(http:// [jenkins-host]/cli)を使用することをお勧めします。 CLIコマンドをビルドするユーザーを指定できます。しかし、ビルドを開始するときに短い説明が何を意味するのか分かりません。

更新:詳細については、Jenkins Wiki Authenticating Scripted Clientsを参照してください。私は、ユーザーfoobar(「フルネーム」Foo Bar)を作成し、次のことを試してみた:

トークンがユーザー設定ページから取得され
wget --auth-no-challenge --http-user=foobar --http-password=[apiToken] http://jenkins.yourcompany.com/job/your_job/build 

http://localhost:8081/user/foobar/configure。出来た。しかし、ユーザーは存在する必要があります。また、--auth-no-challengeオプションを指定する必要があります。それ以外の場合は、ビルドを匿名で開始します。ステータスの説明にはStarted by user Foo Barと表示されます。 すべてを実行するか否か、トリガの仕事を指示する追加のブールパラメータとParameterized Trigger Pluginを経由して構築します開始:

別の更新他のすべてが失敗した場合は、次の回避策を検討することができます。ジョブが実行されないように頼まれた場合、すぐに失敗し、ビルド情報を渡す「クリーンアップ」ジョブを呼び出します。クリーンアップジョブはシステムからビルドを削除します。

+1

json/xmlの簡単な説明は、 "Started by user anonymous"です。私は、誰がビルドをトリガしたのかを、通常のダウンストリームジョブと同じように伝えたい。これは次のようなものです:上流のプロジェクト "MasterJob"によって開始16番の番号を作成 – Magnus

+0

トリガーされたジョブxml/jsonにはupstreamBuild、upstreamProject、upstreamUrlが含まれています。トリガーされたジョブをトリガーするのに必要な情報を提供することで、トリガーの原因を把握するとよいでしょう。 – Magnus

+0

私はCLIを介してグルーヴィースクリプトを実行し、ビルドのすべての部分を制御することができましたが、より軽量なソリューションを望みます。 – Magnus