2008-08-08 5 views
5

Unsere automatische Build-Maschine muss die Versionsnummern des Betriebssystems sowie verschiedene Tools archivieren, die bei jedem Build verwendet werden. (Für den Fall, dass wir später immer genau den gleichen Build replizieren müssen, vielleicht wenn die Maschine längst tot ist.)Sammeln von Betriebssystem- und Tool-Versionsnummern für Build-Archivzwecke

Ich sehe den Befehl "msinfo32.exe" kann verwendet werden, um eine ganze Ladung von System-Versionsinformationen zu speichern, was wir auch archivieren könnten.

Kennt jemand eine Möglichkeit, die Versionsnummern der Visual Studio-Tools einfach zu archivieren?

Welche Mechanismen verwenden andere Entwickler, um diese Art von Informationen für Archivierungszwecke zu sammeln?


Zusätzliche Informationen für Fabio Gomes.

Ich stimme Ihnen zu, dass es in 5 Jahren wahrscheinlich unmöglich sein wird, die genaue Betriebssystem- und Toolkonfiguration wiederherzustellen (bis zum nächsten Sicherheitsupdate). Leider kommt das wirklich von einer vertraglichen Anforderung. Als Teil unserer Lieferung an einen Kunden müssen wir eine Kopie des gesamten Quellcodes und klare Anweisungen zur genauen Replikation des Builds bereitstellen. Es ist wahrscheinlich unmöglich für uns, diese Anforderung perfekt zu erfüllen.

Also - ich werde nur Ihre Antwort als richtig markieren (ich stimme Ihnen zu, dass es praktisch unmöglich ist), und weitermachen mit dem Rest des Stack-Überlaufs zu spielen. :)

PS. Es wäre wirklich toll, wenn der Stack-Überlauf Antworten auf die Antworten unterstützt, anstatt die ursprüngliche Frage zu bearbeiten. Aber ich sehe, dass es already been denied hat.

Antwort

0

Sorry, aber was für eine Notwendigkeit führen könnte, die genau die gleiche Build in Zukunft repliziert?

Nach meiner Erfahrung halten Sie entweder Ihre Produkt-Installer sicher oder starten einen neuen Build von Grund auf neu.

Auch IMO die einzige Möglichkeit, den gleichen Build in der Zukunft zu replizieren, ist Ihre Build-Maschine auf einer virtuellen Maschine laufen und halten Sie die VM-Backup herum.

Ich denke, dass die meisten Software, die Sie benötigen, um den gleichen Build in der Zukunft zu replizieren, nicht mehr verfügbar sein wird, so dass Sie eine Kopie jeder Softwareversion, die Sie in diesem System installieren müssen.

Können Sie genauer auf das Problem eingehen, das Sie lösen möchten?

0

Wenn Sie auf der Befehlszeile aufbauen, könnten Sie sagen, dass es ausführlich ist und erfassen Sie die gesamte Ausgabe in eine Textdatei für die Archivierung mit jedem Build.

eg, msbuild <build_file> > myfile.txt

0

Ein alternativer Vorschlag: Legen Sie die relevanten Tools (Compiler, Systemheader und Bibliotheken usw.) in Ihr Repository selbst, anstatt zu erwarten, dass sie lokal installiert werden. Siehe auch eine blog post Ich schrieb zu diesem Thema.

Ich habe Visual Studio, GCC, etc. alle in mein Subversion-Repository eingecheckt.

Verwandte Themen