Одна из методик, изложенных в « Непрерывной доставке» Jez Humble, заключается в том, что вы должны собрать один пакет, а затем выпустить его для каждой среды, в которой вы развертываете, так что развертывание и артефакты сами по себе несколько раз тестировались перед отправкой в производство.
Я полностью поддерживаю эту идею.
С другой стороны, сборки в режиме отладки, которые дают вам трассировки стека с номерами строк, невероятно полезны в тестовых средах, как и возможность удаленной отладки. Но вы хотите отправить сборку релиза в производство.
Итак, для людей, следующих первому принципу, в какой момент вы переключаетесь с отладочных версий на выпускные?
Прежде чем приступить к первому развертыванию в тестовой среде, стоит оценить стоимость потери режима отладки, чтобы убедиться, что вы тестируете фактического кандидата на выпуск на ранней стадии? Или вы снова строите что-то в процессе продвижения, полагая, что будете доверять процессу сборки, а не программному обеспечению? Или вы просто привинчиваете все это и внедряете отладочные версии в производство?
Примечание: я знаю, что это не относится к интерпретируемым языкам, потому что обычно вы можете переключать конфигурацию вместо того, чтобы делать это во время сборки.