我正在嘗試爲我們的應用程序設置構建服務器。在執行強制構建時,我想使用參數來確定要構建的內容。下面我有設置,將工作DEV主要是因爲if語句這是一個設置的片段。無論我選擇QA還是UAT,它總是假的。有沒有人試圖用cruisecontrol.net做到這一點?我擡頭一看,發現使用CCNET版本1.8.2中的條件參數來更改svn位置
<cb:define name="ParametersTemplate">
<parameters>
<selectParameter>
<name>Target</name>
<display>Target to Build</display>
<description>Which target do you want to build?</description>
<default>DEV</default>
<allowedValues>
<value name="DEV">DEV</value>
<value name="QA">QA</value>
<value name="UAT">UAT</value>
</allowedValues>
</selectParameter>
<textParameter>
<name>Branch</name>
<display>Branch Name:</display>
<description>Name of the branch you want to build?</description>
<default>_DEV</default>
<minimum>8</minimum>
<maximum>255</maximum>
<required>true</required>
</textParameter>
</parameters>
</cb:define>
<cb:define name="ProjectTemplate">
<workingDirectory>$(WorkingDir)\$(ProjectName)</workingDirectory>
<artifactDirectory>$(ArtifactsDir)\$(ProjectName)</artifactDirectory>
<sourcecontrol type="svn" cleanCopy="true">
<workingDirectory>$(WorkingDir)\$(ProjectName)</workingDirectory>
<cb:if expr="$[Branch] == 'QA' || $[Branch] == 'UAT'">
<trunkUrl>$(SVNLocation)/$(ProjectSvnReleaseLocation)/$[Branch]</trunkUrl>
</cb:if>
<cb:else>
<trunkUrl>$(SVNLocation)/$(ProjectSvnDevLocation)</trunkUrl>
</cb:else>
<cb:SVNCredentials/>
</sourcecontrol>
<labeller type="svnRevisionLabeller">
<cb:LabelCommon />
<cb:if expr="'$[Branch]'=='QA' || '$[Branch]'=='UAT'">
<url>$(SVNLocation)/$(ProjectSvnReleaseLocation)/$[Branch]</url>
</cb:if>
<cb:else>
<url>$(SVNLocation)/$(ProjectSvnDevLocation)</url>
</cb:else>
<cb:SVNCredentials/>
</labeller>
<tasks>
<nant>
<targetList>
<target>$(ProjectName)</target>
</targetList>
<cb:NantCommon />
</nant>
</tasks>
<cb:ParametersTemplate/>
</cb:define>
的一件事是替代變量,但我不知道我究竟是如何可以利用他們在這樣的設置。
任何援助將不勝感激。
我最終只是分裂出兩個不同的項目組一個用於_DEV和一個用於UAT/QA 。也許將來我會試着讓它更像我想的那樣工作。 – Mike