2013-10-04 39 views
15

Jenkinsのパラメータは大文字と小文字を区別しますか?ビルド前に "build_parameter"という名前のantパラメータが必要な、パラメータ化されたビルドがあります。 Jenkinsが設定した$ {BUILD_NUMBER}にアクセスしようとすると、antパラメータに設定された値が取得されます。ビルドパラメータで大文字と小文字が区別されない場合、誰も私にこの問題の回避策を提案できますか?ビルドスクリプト(オプションではありません)を変更する必要があるため、ビルドパラメータ名を変更することはできません。ありがとう!Jenkins - BUILD_NUMBER環境変数にアクセスする方法

+0

がhttps://issues.jenkins-ci.org/browse/JENKINS-1322 –

+0

ADARSHを参照してください。 eterと環境変数$ {BUILD_NUMBER}の値が異なります。申し訳ありませんが明確ではありません。 Jenkins $ {BUILD_NUMBER}の値にアクセスする方法が必要です。しかし、環境変数($ {BUILD_NUMBER})と同じようにアクセスしようとすると、別の値が出力されます。 – Anand

+0

私の調査によると、BUILD_NUMBERはあなたに現在のビルド番号を与えます。ビルドスクリプトを変更する必要があります。または、新しい変数を作成してBUILD_NUMBERの値を代入して使用してみてください。 –

答えて

15

最初の質問に答えるために、Jenkins変数では大文字と小文字が区別されます。しかし、Windowsバッチスクリプトを作成している場合、Windowsでは大文字と小文字は区別されないため、大文字と小文字は区別されません。

あなたの設定についてはあまり明確ではないので、あなたのantタスクを起動するためにant build stepを使用していることを前提にしましょう。あなたのantタスクでJenkins変数を利用できるようにする方法の例については、the Jenkins documentation(Adarshと同じページですが、別の章)をご覧ください。

EDIT:

したがって、私はURLを構築するために、環境変数$ {BUILD_NUMBER}をアクセスする必要があります。

なぜ$BUILD_URLを使用しないのですか?拡張電子メールプラグインで利用できないのですか?私はあなたの質問に正しくセットアップし、理解していますと仮定すると、

+0

Peter:Sagarの回答については、上記のコメントを参照してください。私は環境変数$ {BUILD_NUMBER}の値を取得する必要がありますが、他のパラメータ(小文字のパラメータ)によって上書きされていると思います。私はMac OSを使用しており、これらのパラメータをbashスクリプトで使用していません。私がやろうとしているのは、拡張電子メール通知の電子メールコンテンツでそれを使用することだけです。 – Anand

+0

Peter:あなたの提案をありがとう。あなたが提案した後、私は$ {BUILD_URL}を試しました。それは私をビルドページに連れて行きます。アーティファクトを直接アーチファクトに向ける方法があるので、電子メールのリンクからアーティファクトのダウンロードを直接開始することができますか? – Anand

+3

$ {BUILD_URL} /アーティファクト/

5

あなたのスクリプトでビルド番号を使用しようとしている場合は、オプションを持っている:

1)を呼び出すアリ、使用を:ant -Dbuild_parameter=${BUILD_NUMBER}

2)ようにスクリプトを変更します。私のbuild_param:

<property environment="env" /> 
<property name="build_parameter" value="${env.BUILD_NUMBER}"/> 
+0

Sagar:パラメータ化されたビルドオプションを使用して、ユーザーがbuild_numberパラメータを入力するようにします(注:lower_caseにあります)。ただし、アーティファクトの場所をURLとして電子メールで送信する必要があります。したがって、環境変数$ {BUILD_NUMBER}にアクセスしてURLを構築する必要があります。今、ユーザが入力したパラメータ$ {build_number}と環境変数$ {BUILD_NUMBER}は異なっています。しかし、URLに$ {BUILD_NUMBER}を追加すると、$ {build_number}に格納されている値が常に使用されます。 – Anand

+0

ああよろしいですか?その場合は、パラメータリストの "build_number"を "build.number"に変更してください。それはまだ同じ意味を持ち、人々はそれを他のものと混同しません。同時に、それは完全にBUILD_NUMBERとは異なるでしょう。大文字と小文字の区別がないことはわかっていますが(Windows上のサーバーかクライアントですか)、それが最善の方法です。上記のポイント1または2を使用して、スクリプトの内部変数とパラメータおよび環境変数を一致させることができます。 – Sagar

関連する問題