2017-03-20 5 views
0

パラメータの値が(Jenkinのジョブから)利用可能かどうかに基づいてプロパティを設定する方法。可能であれば、その値を使用する必要があります。そうでない場合は、MSBuildのデフォルト値を使用する必要があります。プロパティの設定値MSBuild

おかげで...

+0

これまでに何を試しましたか? – haindl

+0

プロパティグループにジップを設定しました。しかし、私はこの型の値をemtpyかどうかに基づいて変更する必要があります。 – Minu

答えて

2

あなたが "条件" を介してこれを行います。 (オプションで必要に応じてスタックすることもできます)

最初の例では、コマンドラインで設定されていない場合はプロパティを設定します。以下のように、コマンドライン(おそらくジェンキンはコマンドライン経由でプロパティを送信します).........コマンドラインがプロパティを設定しない場合、プロパティはピーナッツに解決されます。そうでなければ

が条件を使用してプロパティを設定する(これは、あなたの質問に対処しますが、この答えを強化していません)....

<PropertyGroup> 
    <WorkingCheckout Condition="'$(WorkingCheckout)'!=''">peanut</WorkingCheckout> 
    </PropertyGroup> 

とキックのために。第二の例をで送信されたものをコマンドラインを使用します複数の可能性がある場合は存在します。以下のファイルを

"..""..\..""..\..\.."

をチェックして、ファイルが存在する場合、それを設定します。そして、「存在する」条件が満たされていなければ、「エラーメッセージ」を表示します。貧しい人の例外処理。

<PropertyGroup> 
    <MySettingsFile>Bad_Relative_Path_Logic_Need_To_Check_All_Relative_Paths</MySettingsFile> 
    <MySettingsFile Condition="Exists('$(WorkingCheckoutMassaged)..\SomeFolder\MySettings.xml')">$(WorkingCheckoutMassaged)..\SomeFolder\MySettings.xml</MySettingsFile> 
    <MySettingsFile Condition="Exists('$(WorkingCheckoutMassaged)..\..\SomeFolder\MySettings.xml')">$(WorkingCheckoutMassaged)..\..\SomeFolder\MySettings.xml</MySettingsFile> 
    <MySettingsFile Condition="Exists('$(WorkingCheckoutMassaged)..\..\..\SomeFolder\MySettings.xml')">$(WorkingCheckoutMassaged)..\..\..\SomeFolder\MySettings.xml</MySettingsFile> 
    </PropertyGroup> 
関連する問題