Freitag, 29. April 2011

Build-Datum im Dateinamen mit Windows Installer XML (WiX-Tools)

Für diejenigen die auch mal in die Verlegenheit kommen, mit WiX-Tools zu arbeiten (bei der Namensgebung hat wohl keiner an uns deutschsprachige gedacht... - andererseits hat das Mitsubishi bei seinem Pajero auch nicht ;) ) und dabei das Bedürfnis verspüren, ihre Dails/Weekly/Whatever-Builds mit einem Timestamp zu versehen:
<target name="AfterBuild">
<createproperty value="$([System.DateTime]::Now.ToString('yyyyMMdd_hhmm'))">
<output taskparameter="Value"
propertyname="DateString"></output>
</createproperty>

<copy skipunchangedfiles="true" sourcefiles="$(TargetPath)"
destinationfiles="\\zielserver\zieldatei\MyApp_Daily_$(DateString).msi">
</copy></target>

Das Target AfterBuild wird nach dem Build ausgeführt (oha!), zunächst wird die Systemfunktion DateTime aufgerufen mittels formatiertem ToString in eine Variable geschrieben. Diese wird schließlich verwendet um beim abschließenden Kopieren einen Datums-behafteten Dateinamen zu erstellen.

Funktioniert prinzipiell auch mit anderen Funktionen wenn sie vom verwendeten MSBuild zur Verfügung gestellt werden - einfach probieren.

Keine Kommentare:

Kommentar veröffentlichen