Jak tworzymy serwery staging na potrzeby testów w Ageno?
Published in
2 min readJul 13, 2017
Serwer staging to środowisko testowe, które zazwyczaj jest kopią lustrzaną produkcyjnego. W naszym przypadku, jako specjaliści od Magento przeprowadzamy tutaj testy obciążeniowe i inne testy wprowadzanych nowych wersji rozwiązań e-commerce. Po pomyślnym przejściu weryfikacji, zmiany publikowane są na serwer produkcyjny.
Oto w jaki sposób pracujemy z serwerem testowym:
- Konfiguracja serwera: Identyczna jak na serwerze produkcyjnym.
- Subdomena: Domeną testową Ageno jest *.ageno.work na jej podstawie tworzymy subdomeny. Przykład: minicrm.ageno.work
- Zabezpieczenie serwera: Zabezpieczyć dostęp poprzez Htpasswd, w niektórych przypadkach dodać regułę do Nginx umożliwiającą dostęp tylko naszym adresom IP.
- Baza danych: Skopiować bazę daych z serwera produkcyjnego pomijając dane osobowe Klientów.
- Pliki statyczne: Skopiować pliki statyczne z serwera produkcyjnego aby umożliwić realne testy.
- Weryfikacja: Weryfikować iteracyjnie wpływ zmian w aplikacji na wydajność całego rozwiązania. (W zależności od projektu: New Relic, Jmeter, htop, iotop, collectd) Weryfikacja powinna opierać się na liczbach, a nie subiektywnych odczuciach.
- Wyłączenie zewnętrznych serwisów: Wyłączyć wszelkie narzędzia typu: Google Analytics, serwisy remarketingowe, e-mail marketingowe, zewnętrzne API, systemy księgowe, ERP, CRM itp. tak aby nie zaburzyć testami danych w rozwiązaniach zewnętrznych.
- Wyłączenie CRON: Wyłączyć wszelki operacje automatyczne.
- Testowy adres e-mail: Zaimplementować testowy adres e-mail. (MailCatcher)
- Blokada robotów wyszukiwarek: Zablokować wszelki ruch i indeksowanie wyszukiwarek (noindex, nofollow).
User-agent: *
Disallow: / - Deployment: Deploy na serwer staging jest realizowany z gałęzi develop w repozytorium Git.