Aktualizacja systemu

01 updates install from file

W porównaniu do instalacji i migracji systemu, aktualizacja jest bardzo prosta i przyjemna. Każdy administrator YetiForce CRM powinien sobie z nią poradzić. Za nim jednak do niej przejdziemy, w pierwszej kolejności powinniśmy zadbać o dobrą kopię zapasową jak również uruchomić cały proces na środowisku testowym. Do najczęstszych błędów młodych administratorów można zaliczyć między innymi aktualizacje wykonywane bezpośrednio na produkcji.

Gdy wykonaliśmy już kopię systemu i uruchomiliśmy ją w środowisku testowym, możemy przystąpić do aktualizacji systemu. W tym celu należy wykonać następujące czynności:

Pobieranie paczki aktualizacyjnej

Paczkę aktualizacyjną można pobrać z kilku miejsc, jednakże zalecanym miejscem jest to: https://github.com/YetiForceCompany/UpdatePackages/tree/master/. Znajdują się tam paczki aktualizacyjne do wszystkich wersji. Należy wybrać tą paczkę, która odpowiada naszej wersji, a co ważniejsze aktualizacje można wykonywać tylko zachowując kolejność. Jeżeli masz wersje 1.1 a chciałbyś uaktualnić system do wersji 2.0 powinieneś pobrać następujące paczki aktualizacyjne: 

  1. 1.1.0RC_to_1.2.0RC
  2. 1.2.0RC_to_1.3.0RC
  3. 1.3.0RC_to_1.4.0RC
  4. 1.4.0RC_to_2.0.0
Co prawda są wbudowane mechanizmy, które nie pozwolą wgrać niepoprawnej paczki, ale można je oszukać. Choć "oszukiwanie" nie jest zalecane, to czas ma biznesowe uzasadnienie. Domyślnie paczki umożliwiają aktualizacje tylko z wersji stabilnych [np. 1.2.0, 1.4.0] jednakże wersje pośrednie [np. 1.2.54, 1.4.11] nie pozwolą na aktualizacje systemu. Do takiej sytuacji może dojść w dwóch przypadkach:
  1. Pobrana została wersja systemu niestabilna [np. bezpośrednio z głównego folderu GitHub], ponieważ prawidłowo, powinniśmy pobrać system z tego miejsca: https://github.com/YetiForceCompany/YetiForceCRM/releases
  2. Została wgrana paczka aktualizacyjna dla wersji pośredniej, można je pobrać np. z kanału developerskiego tutaj: https://github.com/YetiForceCompany/UpdatePackages/tree/developer/YetiForce%20CRM%201.x.x 
Niezależnie od przyczyny, należy pamiętać, że jeśli chcesz by aktualizacja była możliwa należy wykonać czynności takie jak:
  1. Otworzyć ten plik https://github.com/YetiForceCompany/YetiForceCRM/blob/master/config/version.php tylko na swoim serwerze gdzie mamy CRM;
  2. Następnie należy zmienić numer wersji na stabilny np. z wersji 1.4.55 na 1.4.0 [zawsze zmniejszamy wersje].
Pomimo, że sprawdzamy wielokrotnie poprawność aktualizacji systemu z wersji pośrednich, czasem można napotkać na nieprawidłowości, dlatego osobom, które nie posiadają własnego programisty, zalecamy, aby pracowały tylko z wersjami stabilnymi. 

Włączenie logów systemu

Włączenie logów systemu jest o tyle istotne, że aktualizacja może nam nie pokazać żadnych błędów od strony interfejsu, aktualizacja może zwrócić komunikat, że aktualizacja została wykonana prawidłowo, lecz dopiero przeglądając logi, możemy być tego pewni. Dlatego przed przystąpieniem do aktualizacji, powinieneś zapoznać się z tym artykułem debugowanie.

Aktualizacja systemu YetiForce CRM

Proces ten jest niezmiernie prosty, należy wykonać następujące kroki: 
  1. Przechodzimy do zarządzania modułami [module manager];
  2. Używamy narzędzia "Instaluj z pliku";
  3. Wybieramy plik, który pobraliśmy zgodnie z punktem "Pobieranie paczki aktualizacyjnej";
  4. Wybieramy "Importuj";
  5. Jeżeli wszystko się zgadza pojawi się nam okno, w którym mamy informacje z jakiej wersji do jakiej aktualizujemy [dostępne dopiero od wersji YetiForce 2.0] oraz listę istotnych zmian jakie wprowadza aktualizacja, a które mogą mieć wpływ na jej przebieg. Jeżeli jesteśmy gotowi i włączyliśmy logi, to akceptujemy licencję i uruchamiamy aktualizację wciskając przycisk "Yes".
 Jeżeli aktualizujemy system z wersji 1.4 do wersji 2.0 to należy pamiętać, że od wersji 2.0 wymagamy wersji PHP przynajmniej 5.4 [zalecamy wersje 5.6]. Dodatkowo, jeżeli konfigurujesz wersje PHP to pamiętaj, że YetiForce aktualizuje również własny plik .htaccess, więc po aktualizacji musisz go dostosować lub konfiguracje przenieść katalog wyżej, aby YetiForce ich nie nadpisywał przy aktualizacjach.
Sama aktualizacja nie powinna być pracochłonna. Na dobrze skonfigurowanych serwerach o odpowiedniej mocy, cały proces nie powinien zająć dłużej jak 10 sekund, jednakże jest wiele czynników, które ten proces mogą wydłużyć.

Weryfikacja poprawnej aktualizacji

  1. W pierwszej kolejności sprawdzamy plik logów, czy przypadkiem nie zawiera błędów, czy też ostrzeżeń. Plik logów może zawierać nawet 20 tys. linii kodu, zalecamy przeszukiwać go po słowach kluczach np. error, warning itd. 
  2. W drugiej kolejności sprawdzamy, czy od strony wizualnej wszystko działa prawidłowo, [czy możemy edytować, modyfikować, usuwać rekordy]. Zmiany te, wprowadzamy przede wszystkim jako użytkownik nieuprzywilejowany. 
  3. Wykonujemy również niezbędne testy związane np. z testową wysyłką maili, generowaniem dokumentów pdf, edytowaniem ról, czy też zasad dostępu.
  4. Na końcu sprawdzamy komunikacje z systemami zewnętrznymi np. integrującymi się poprzez API. 
YetiForce podczas aktualizacji może również aktualizować plik config/api.php, który aktywuje/dezaktywuje działanie integracji z systemami zewnętrznymi np. z portalem klienta. YetiForce jeżeli modyfikuje coś w plikach API, to domyślnie je wyłącza [dla bezpieczeństwa] dlatego należy je ponownie włączyć zgodnie z konfiguracją z przed aktualizacji. 

Jak radzić sobie z problemami

Przede wszystkim należy dokładnie przeanalizować logi, mamy tam rozwiązanie na 99% problemów. Oprócz logów aplikacji, mam na myśli również logi serwera, które również są niezbędnym źródłem wiedzy. Drugim krokiem może być opisanie problemu na GitHub, gdzie nasza społeczność jak również producent YetiForce pomaga bezpłatnie. Za nim jednak dodasz zgłoszenie tutaj https://github.com/YetiForceCompany/YetiForceCRM/issues należy przygotować niezbędne opisy, istotne logi, ważne zrzuty ekranu i dokładnie wyjaśnić na czym polega problem. Niepoprawnie dodany issue może tylko wydłużyć okres w jakim społeczność będzie wstanie Tobie pomóc.  Możesz sięgnąć również po profesjonalne i płatne wsparcie bezpośrednio od producenta, odwiedź nasz sklep i zobacz naszą ofertę usług.
  • Monday, 07 August 2017