Jedną z praktyk określonych w Continuous Delivery Jez Humble jest to, że powinieneś zbudować jeden pakiet, a następnie wypuścić go w każdym środowisku, w którym wdrażasz, aby wdrożenie i artefakty były wielokrotnie testowane przed przejściem do produkcji.
W pełni popieram ten pomysł.
Z drugiej strony kompilacje w trybie debugowania, które dają ślady stosu z numerami linii, są niezwykle przydatne w środowiskach testowych, podobnie jak możliwość zdalnego debugowania. Ale chcesz wysłać kompilację wersji do produkcji.
Tak więc, dla osób przestrzegających pierwszej zasady, w którym momencie przełączasz się z wersji debugowania na wersje kompilacji?
Czy to jest przed pierwszym wdrożeniem w środowisku testowym, czy warto ponieść koszty utraty trybu debugowania, aby upewnić się, że testujesz kandydata do wydania wcześniej? A może budujesz ponownie na jakimś etapie procesu promocji, zakładając, że zaufasz procesowi kompilacji nad oprogramowaniem? A może po prostu wkręcasz to wszystko i wdrażasz wersje debugowania na produkcji?
Uwaga: Wiem, że tak naprawdę nie dotyczy to języków interpretowanych, ponieważ zwykle można przełączyć przełącznik w konfiguracji zamiast robić to w czasie kompilacji.