Jez HumbleのContinuous Deliveryで設定されているプラクティスの1つは、1つのパッケージをビルドしてから、展開先の各環境にリリースし、実稼働に移行する前に展開とアーティファクト自体が複数回テストされるようにすることです。
私はこの考えを完全に支持します。
一方、行番号付きのスタックトレースを提供するデバッグモードビルドは、リモートデバッグ機能と同様に、テスト環境で非常に便利です。しかし、リリースビルドを実稼働環境に送信する必要があります。
それでは、最初の原則に従う人々にとって、どの時点でデバッグからリリースビルドに切り替えるのですか?
テスト環境への最初の展開の前に、デバッグモードを失うコストを計算することは、実際のリリース候補を早期にテストするために支払う価値がありますか?または、プロモーションプロセスのある時点で、ソフトウェアを介したビルドプロセスを信頼することを考えて、再度ビルドしますか?それとも、すべてを台無しにして、デバッグバージョンを運用環境に展開するだけですか?
注:通常、ビルド時にスイッチを設定するのではなく、設定でスイッチをフリックできるため、これはインタープリター言語には実際には適用されません。