Zaglądam tu znów po “latach” i odświeżone forum - jakie pięknie!. Najwyższy czas wrócić do ekipy po sąsiedzku, bo SO już mnie męczy.
Potrzebuję opinii na temat rozwiązania problemu środowiska beta dla swojego pet-projektu.
Projekt staje się coraz poważniejszy i nie chcę fundować wybranym użytkownikom wywałek spowodowanych jakimś nocnym pushem Oczywiście testy są, ale wiecie… nawet phantomem nie dam rady ogarnąć wszystkich wyuzdanych sytuacji.
Załóżmy, że mamy dwie wersje apki: stabilny prod i niestabilną betę - zazwyczaj 1 comit do przodu, baza ta sama. Z marszu wszyscy widzą prod, ale pewna grupa po zalogowaniu transparentnie dostaje betę.
To są tacy moi nieświadomi betatesterzy, którzy obciążają mój serwis za darmo, więc czysty deal .
Po 2-3 dniach od wygrzania się ficzera prod dostaje ten sam kod co beta.
Technicznie planuję to rozegrać z HAProxy i ruch kierować wg cookie do odpowiedniego nginxa prod/beta z Railsami pod spodem. Apka to częściowo generowany HTML, sporo REST, JS a także kilka elementów SPA w Angularze, oczywiście Rails 4. Funkcjonalność uznaję za wygrzaną jeśli logi serwerowe, klienckie są si i nie ma lamentów ze strony userów
Najważniejsze: URLe/hosty muszą być te same - permalinki, ponadto staram sie nie robić konfliktujących zmian w DB i routingach by nie było zgrzytu. Wiem że na bank zmienią się urle do assetów w chwili przełączenia, ale to sytuacja jak zwykły upgrade aplikacji do nowszej wersji. Może prod wkurzy się na nieznaną migrację w bazie zrobioną przez betę?
Testowaliście podobne rozwiązanie i ew. jakie problemy napotkaliście, o których jeszcze pewnie nie wiem?
Może macie jakieś inne sprawdzone i tanie strategie beta testów?
Pozdrawiam