#author("2021-06-06T15:29:22+09:00","default:tanak0to","tanak0to") #author("2021-07-22T21:54:24+09:00","default:tanak0to","tanak0to") RIGHT:[[フリーソフトウェアのコンパイル]] @ Composer 化した Drupal のアップデート作業 参考 https://www.drupal.org/docs/updating-drupal/updating-drupal-core-via-composer * ユーザグループ確認 [#p55cb750] 操作するユーザを www-data グループに入れておく * swap の確認 [#l1b31b46] composer(ver.1) はメモリーが 2G 以上ないと,OS ごとフリーズしたようになる. なので,スワップファイルを作って対応する. $ sudo /bin/dd if=/dev/zero of=/var/swap bs=2M count=1024 $ sudo chmod 600 /var/swap $ sudo /sbin/mkswap /var/swap $ sudo /sbin/swapon /var/swap $ export COMPOSER_MEMORY_LIMIT=-1 $ alias comp="COMPOSER_MEMORY_LIMIT=-1 composer" * drupal/core-recommended か drupal/core [#ybce0ffa] drupal/core-recommended か drupal/core のどちらのプロジェクトを使っているか確認する. $ cd /home/drupal $ composer show drupal/core-recommended リストがたくさん表示されるので drupal/core-recommended を使っていることがわかる. * アップデート可能なパッケージを確認する. [#ze8c8dfb] $ cd /home/drupal $ composer outdated "drupal/*" drupal/coder 8.3.9 8.3.13 drupal/core 8.9.x-dev a83c804 8.9.x-dev 76da907 drupal/core-dev 8.9.x-dev 36370b3 9.3.x-dev dceb37d drupal/core-recommended 8.9.x-dev b4aad1e dev-default 91e393a * バックアップ [#m43871f4] ** メンテナンスモードへ [#u46f04ae] $ cd /home/drupal $ ./vendor/bin/drush state:set system.maintenance_mode 1 ** キャッシュの削除 [#be47dfa7] $ ./vendor/bin/drush cache:rebuild ** データベースバックアップ [#m2839bb1] $ ./vendor/bin/drush sql:dump > /Backup/drupal/drupal8.sqldump.$(date +%F) でできるはずで,実際にできてそうだが, エラーメッセージとして > mysqldump: Error: 'Access denied; you need (at least one of) the PROCESS privilege(s) for this operation' when trying to dump tablespaces と言われる. なので,確実に以下のコマンドでバックアップしておく $ sudo -s # mysqldump -u root -p -h localhost --add-drop-table --triggers ¥ --routines --events drupal8 > /Backup/drupal/drupal8.sqldump.$(date +%F) ** フラットファイルバックアップ [#ge0229fb] # cd /home # tar cpzf /Backup/drupal/drupal-file-$(date +%F).tgz drupal * drupal アップデート [#ke8a71ef] $ /home/drupal $ composer update drupal/core "drupal/core-*" --with-all-dependencies Updating dependencies (including require-dev) // > リターンを押す 結構時間がかかる - Updating drupal/core (8.9.x-dev a83c804 => 8.9.16): The package has modified files: - Updating drupal/core (8.9.x-dev a83c804 => 8.9.16): The package has modified files: M scripts/cron-curl.sh M scripts/cron-lynx.sh Discard changes [y,n,v,d,s,?]? y - discard changes and apply the update n - abort the update and let you manually clean things up v - view modified files d - view local modifications (diff) s - stash changes and try to reapply them after the update ? - print help Discard changes [y,n,v,d,s,?]? n or s ? <--- ここはどうすればいいのかなぁ Discard changes [y,n,v,d,s,?]? y <--- ここはどうすればいいのかなぁ(-> y 以外うまくいかない) 以下のファイルが変更されてしまう - drupal/web/core/scripts/cron-curl.sh - drupal/web/core/scripts/cron-lynx.sh - drupal/web/.htaccess * DB アップデート [#c274b242] $ ./vendor/bin/drush updatedb * キャッシュの削除 [#wdfa7860] $ ./vendor/bin/drush cache:rebuild //* 設定ファイルのエクスポート //変更点の確認 // $ ./vendor/bin/drush config:export --diff * メンテナンスモード解除 [#rb8be33c] $ cd /home/drupal $ ./vendor/bin/drush state:set system.maintenance_mode 0 $ ./vendor/bin/drush cache:rebuild