Aktualizowanie jądra Drupala za pomocą Composera

Poznaj DrupalaSłownik Drupala

Ten artykuł zakłada, że Drupala zainstalowano z projektu Composera, takiego jak drupal/core-recommended lub drupal/dxpr-marketing-cms-project

Wyświetlanie dostępnych aktualizacji Drupala

composer outdated "drupal/*"

Jeśli nie ma wiersza zaczynającego się od drupal/core, Composer nie widzi żadnej aktualizacji. Jeśli aktualizacja istnieje, kontynuuj poniższymi poleceniami

Tworzenie kopii zapasowej instancji Drupala

Aktualizując witrynę produkcyjną, zawsze twórz kopię zapasową przed aktualizacją, nawet jeśli aktualizację wypróbowano już z powodzeniem w środowisku programistycznym lub testowym. Do utworzenia kopii zapasowej lub migawki witryny na Drupalu użyj narzędzi dostawcy hostingu.

Aktualizowanie kodu jądra Drupala

jeśli używasz drupal/core-recommended:

composer update "drupal/core-*" --with-all-dependencies

Aby zasymulować aktualizację i zobaczyć, co by się stało, niczego realnie nie zmieniając, dodaj --dry-run.

Aktualizacja do najnowszej wersji poprawkowej jądra

Aby zaktualizować witrynę do najnowszej wersji poprawkowej, ale nie do najnowszej wersji drugorzędnej, dodaj opcje --with= dla każdej zależności drupal/core-* wymienionej w pliku composer.json.

Na przykład, jeśli 10.2 to bieżąca wersja drugorzędna, a witrynę chcesz zaktualizować do najnowszej wersji poprawkowej 10.3:

composer update "drupal/core-*" --with-all-dependencies --with=drupal/core-recommended:~10.3.0 --with=drupal/core-composer-scaffold:~10.3.0

Ten przykład zakłada, że  drupal/core-recommended i drupal/core-composer-scaffold to jedyne zależności jądra Drupala w pliku composer.json.

Aktualizacja do konkretnej wersji jądra

Ogólnie zalecamy nie podawać konkretnej wersji jądra Drupala podczas aktualizacji, chyba że chcesz przypiąć konkretną wersję. Aby przypiąć witrynę do konkretnej wersji, skorzystaj z następującego przykładu: 

Aby przypiąć witrynę do wersji 10.3.6 i odpowiednio zaktualizować wszystkie zależności: 

composer require drupal/core-recommended:10.3.6 drupal/core-composer-scaffold:10.3.6 drupal/core-project-message:10.3.6 --update-with-all-dependencies

Ostrzeżenie: przypięcie witryny do konkretnej wersji jądra dopisuje tę wersję do pliku lock, a przyszłe aktualizacje nie wyjdą poza tę wersję. Uruchom ponownie polecenie require podane poniżej, aby wrócić do „odpiętej” wersji jądra.

Odpinanie konkretnej wersji jądra

Jeśli działa przypięta wersja jądra Drupala, a witrynę chcesz zaktualizować do innej wersji, masz dwie możliwości.

  1. Uruchom powyższe polecenie composer require, aby podać nową, przypiętą wersję jądra. 
  2. Odepnij wersję jądra i zaktualizuj do najnowszej wersji Drupala.

Aby odpiąć wersję Drupala, uruchom to polecenie: 

composer require drupal/core-recommended drupal/core-composer-scaffold drupal/core-project-message --update-with-all-dependencies

Uruchamianie aktualizacji bazy danych

Dla wygody dołączono polecenia Drusha potrzebne do dokończenia aktualizacji; wielu uważa Drusha za szybszego i łatwiejszego niż webowy panel administracyjny.

Możesz użyć Drusha:

drush updatedb
drush cache:rebuild

Albo odwiedź w przeglądarce stronę [YOUR DOMAIN]/update.php.