Obtenir Configuration préprocesseur pour travailler dans CruiseControl.NET

StackOverflow https://stackoverflow.com/questions/1506395

  •  19-09-2019
  •  | 
  •  

Question

Je suis en train de définir des valeurs dans mon fichier ccnet.config.

Je suis sous la version 1.4.4.83.

J'ai ajouté xmlns: cb = "urn: ccnet.config.builder" à mon principal element.like CruiseControl:

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

suivante I défini certaines définit des constantes de processeur:

<cb:define prodbuildtag="1.1.25.1207" />
<cb:define testbuildtag="1.1.25.1207">

finalement j'ai essayé de faire référence à la définir des valeurs dans une balise comme ceci:

<sourcecontrol type="svn">
    <trunkUrl>https://someserver/svn/myproject/tags/$(prodbuildtag)</trunkUrl>
    <username>johnDoe</username>
    <password>JelloW0r1d</password>
    <tagOnSuccess>false</tagOnSuccess>
    <tagBaseUrl>https://someserver/svn/myproject/tags/</tagBaseUrl>
</sourcecontrol>

Quand je Bulid en utilisant le script, il traite le define $ (prodbuildtag) comme une chaîne vide et le code contrôlées après sur la base trunkUrl « https: // someserver / svn / myproject / tags / . Je ne parviens pas à obtenir la configuration préprocesseur au travail; s'il vous plaît aider.

Était-ce utile?

La solution

Je l'ai testé le code affiché dans 1,5 et il semble fonctionner. Si vous incluez plusieurs fichiers assurez-vous que vous avez <cruisecontrol xmlns:cb="urn:ccnet.config.builder"> dans chaque fichier

Je pense que la syntaxe $ () résout les variables d'environnement ainsi.

Autres conseils

Je sais que cela fonctionne parce que nous le faisons tout le temps. Voici un exemple de ce que nous avons dans notre fichier ccnet.config:

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

  <cb:define svnPath="C:\Program Files\CollabNet Subversion\svn.exe"/>      
  <cb:define svnReposRootUrl="http://someserver/svn"/>

  <!-- cc.net auto-updating config project -->
  <project name="ccnet-config">
    <triggers>
      <intervalTrigger seconds="30"/>
    </triggers>
    <sourcecontrol type="svn">
      <workingDirectory>C:\Program Files\CruiseControl.NET\server\config</workingDirectory>
      <executable>$(svnPath)</executable>
      <trunkUrl>$(svnReposRootUrl)/build/trunk/ccnet/config/XMGBUILD01</trunkUrl>
    </sourcecontrol>
  </project>

</cruisecontrol>

Il est pas clair de votre question où le cb: définir balise est par rapport à l'endroit où vous l'utilisez. Je voudrais essayer de le mettre comme enfant de l'élément de cruisecontrol. Je ne sais pas si elle peut être un enfant de quoi que ce soit d'autre ... Je ne l'ai jamais essayé.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top