フリーソフトウェアのコンパイル

@ Composer 化した Drupal のアップデート作業 参考

https://www.drupal.org/docs/updating-drupal/updating-drupal-core-via-composer

ユーザグループ確認

操作するユーザを www-data グループに入れておく

swap の確認

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

drupal/core-recommended か drupal/core のどちらのプロジェクトを使っているか確認する.

$ cd /home/drupal
$ composer show drupal/core-recommended

リストがたくさん表示されるので drupal/core-recommended を使っていることがわかる.

アップデート可能なパッケージを確認する.

 $ 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

バックアップ

メンテナンスモードへ

 $ cd /home/drupal
 $ ./vendor/bin/drush state:set system.maintenance_mode 1

キャッシュの削除

 $ ./vendor/bin/drush cache:rebuild

データベースバックアップ

 $ ./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)

フラットファイルバックアップ

 # cd /home
 # tar cpzf /Backup/drupal/drupal-file-$(date +%F).tgz drupal

drupal アップデート

 $ /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:
   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,?]? y  <---

ここはどうすればいいのかなぁ(-> y 以外うまくいかない)

以下のファイルが変更されてしまう

DB アップデート

 $ ./vendor/bin/drush updatedb

キャッシュの削除

 $ ./vendor/bin/drush cache:rebuild

メンテナンスモード解除

 $ cd /home/drupal
 $ ./vendor/bin/drush state:set system.maintenance_mode 0
 $ ./vendor/bin/drush cache:rebuild

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-07-22 (木) 21:54:24