Jak tworzymy serwery staging na potrzeby testów w Ageno?

Maksymilian Sleziak
Ageno Blog
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:

  1. Konfiguracja serwera: Identyczna jak na serwerze produkcyjnym.
  2. Subdomena: Domeną testową Ageno jest *.ageno.work na jej podstawie tworzymy subdomeny. Przykład: minicrm.ageno.work
  3. Zabezpieczenie serwera: Zabezpieczyć dostęp poprzez Htpasswd, w niektórych przypadkach dodać regułę do Nginx umożliwiającą dostęp tylko naszym adresom IP.
  4. Baza danych: Skopiować bazę daych z serwera produkcyjnego pomijając dane osobowe Klientów.
  5. Pliki statyczne: Skopiować pliki statyczne z serwera produkcyjnego aby umożliwić realne testy.
  6. 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.
  7. 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.
  8. Wyłączenie CRON: Wyłączyć wszelki operacje automatyczne.
  9. Testowy adres e-mail: Zaimplementować testowy adres e-mail. (MailCatcher)
  10. Blokada robotów wyszukiwarek: Zablokować wszelki ruch i indeksowanie wyszukiwarek (noindex, nofollow).
    User-agent: *
    Disallow: /
  11. Deployment: Deploy na serwer staging jest realizowany z gałęzi develop w repozytorium Git.

--

--