- 追加された行はこの色です。
- 削除された行はこの色です。
#author("2021-06-06T15:26:35+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:
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 ? <---
ここはどうすればいいのかなぁ
以下のファイルが変更されてしまう
- 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