Сбор номеров версий ОС и инструментов для архивирования сборки

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

Вопрос

Наша автоматизированная машина сборки должна архивировать номера версий операционной системы, а также различные инструменты, используемые во время каждой сборки.(На случай, если нам когда-нибудь понадобится повторить точно такую же сборку позже, возможно, когда машина будет давно мертва.)

Я вижу команду "msinfo32.exe" может использоваться, чтобы вывести весь груз информацию о версии системы, которые мы можем архиве.

Кто-нибудь знает способ легко заархивировать номера версий инструментов Visual Studio?

Какие механизмы используют другие разработчики для сбора такого рода информации в архивных целях?


Дополнительная информация для Фабио Гомеса.

Я согласен с вами, что через 5 лет, вероятно, будет невозможно воссоздать точную конфигурацию операционной системы и инструмента (вплоть до ближайшего обновления для системы безопасности).К сожалению, на самом деле это вытекает из контрактных требований.В рамках нашей поставки заказчику мы должны предоставить копию всего исходного кода и четкие инструкции о том, как именно воспроизвести сборку.Вероятно, мы не сможем полностью выполнить это требование.

Итак, я просто отмечу ваш ответ как правильный (я согласен с вами, что это практически невозможно) и продолжу играть с остальной частью stack overflow.:)

PS.Было бы действительно здорово, если бы stack overflow поддерживал ответы на ответы вместо того, чтобы редактировать исходный вопрос..Но я вижу, что это произошло уже было отказано.

Это было полезно?

Решение

Извините, но что может привести к необходимости повторить точно такую же сборку в будущем?

По моему опыту, вы либо обеспечиваете безопасность установщиков вашего продукта, либо начинаете новую сборку с нуля.

Также, IMO, единственный способ воспроизвести точно такую же сборку в будущем - это запустить вашу машину сборки на виртуальной машине и сохранить резервную копию виртуальной машины.

Я думаю, что большинство программ, которые вам понадобятся для репликации точно такой же сборки в будущем, больше не будут доступны, поэтому вам нужно будет сохранить копию каждой версии программного обеспечения, которую вы устанавливаете на этот компьютер.

Не могли бы вы более конкретно рассказать о проблеме, которую вы пытаетесь решить?

Другие советы

Альтернативное предложение:поместите соответствующие инструменты (компиляторы, системные заголовки и библиотеки и т.д.) В сам ваш репозиторий, а не ожидайте, что они будут установлены локально.Смотрите также a запись в блоге Я писал на эту тему.

У меня есть Visual Studio, gcc и т.д.все проверено в моем репозитории Subversion.

Если вы опираетесь на командная строка вы могли бы сделать его подробным и записывать все выходные данные в текстовый файл для архивирования при каждой сборке.

eg, msbuild <build_file> > myfile.txt

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top