dotnet/MRPP_DOTNET_ConnectionString.xml (48 lines of code) (raw):

<?xml version="1.0" encoding="UTF-8"?> <meta-runner name=".NET - Update connection string"> <description>Update connection string. Note the connection string must be defined in the configuration file.</description> <settings> <parameters> <param name="system.config.file" value="" spec="text description='Confguration file in which the connection string should be updated' display='normal' label='Configuration file' validationMode='not_empty'" /> <param name="system.connectionstring.name" value="" spec="text description='Key of the connection string to update' display='normal' label='Connection string key' validationMode='not_empty'" /> <param name="system.connectionstring.value" value="" spec="text description='The new connection string value' display='normal' label='Connection string value' validationMode='not_empty'" /> </parameters> <build-runners> <runner name="Connection strings" type="Ant"> <parameters> <param name="build-file">&lt;project name="Update connection strings"&gt; &lt;target name="update-config-file"&gt; &lt;echo message="Updating connection string ${connectionstring.name} in ${config.file}..." /&gt; &lt;tempfile property="temp.config.file" /&gt; &lt;copy file="${config.file}" tofile="${temp.config.file}"/&gt; &lt;xslt in="${temp.config.file}" out="${config.file}"&gt; &lt;style&gt; &lt;string&gt;&lt;![CDATA[&lt;?xml version="1.0"?&gt; &lt;xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"&gt; &lt;xsl:template match="@*|node()"&gt; &lt;xsl:copy&gt; &lt;xsl:apply-templates select="@*|node()"/&gt; &lt;/xsl:copy&gt; &lt;/xsl:template&gt; &lt;xsl:template match="/configuration/connectionStrings/add[@name='${connectionstring.name}']/@connectionString"&gt; &lt;xsl:attribute name='connectionString'&gt;${connectionstring.value}&lt;/xsl:attribute&gt; &lt;/xsl:template&gt; &lt;/xsl:stylesheet&gt;]]&gt;&lt;/string&gt; &lt;/style&gt; &lt;/xslt&gt; &lt;echo message="Updated connection string ${connectionstring.name} in ${config.file}." /&gt; &lt;/target&gt; &lt;/project&gt;</param> <param name="build-file-path" value="build.xml" /> <param name="target" value="update-config-file" /> <param name="teamcity.coverage.emma.include.source" value="true" /> <param name="teamcity.coverage.emma.instr.parameters" value="-ix -*Test*" /> <param name="teamcity.coverage.idea.includePatterns" value="*" /> <param name="teamcity.step.mode" value="default" /> <param name="use-custom-build-file" value="true" /> </parameters> </runner> </build-runners> <requirements /> </settings> </meta-runner>