Drupal 11.2.0(Drupal CMS 1.2.0)にアップデートする

2025年06月24日(火) - 22:10

1 はじめに

お知らせが来てたから core をアップデートしようと思ったら、いつもの次のコマンドでアップデートできなかった。

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

既に最新です、とのメッセージだったから???となりながら composer.json をみたところ、core は 11.1.8 で固定されていた。^11.2 に置換すれば大丈夫かと思いきやそんなに単純ではなく、依存関係やら何ならでアップデートできなかった。

これじゃ埒が明かないから、最終的に Drupal CMS 1.2.0(Drupal Core 11.2.0)に対応した composer.json を用意して対応することにした。

2 自分が採用したアップデート手順

  1. 何はともあれサイトをメンテナンスモードにする。
  2. web/sites/default を一時的に sudo chmod 775 で書き込み可とする。
  3. composer.json を置き換える。今回は、新たに Drupal CMS 1.2.0 のサイトを作って、そのファイルをコピーした。
    本来の手順を知らないから非常手段ということで。
  4. Package Manager を使用するためweb/sites/default/settings.php に次を追加する。
    $settings['testing_package_manager'] = TRUE;
  5. composer update "drupal/*" --with-all-dependencies を実行してcomposer.lock を更新する。
  6. 標準構成のモジュールに対して、別途モジュールを追加している場合は composer require drupal/*** を実行しておく
  7. 管理者アカウントでログインしている状態で jisaba.life/update.php を開いてデータベースを更新する。
    終わったらメンテナンスモードもオフになる。
  8. web/sites/default を sudo chmod 555 で元に戻す。

こんな感じで無事アップデートできた。

3 おわりに

モジュールや core など Drupal CMS の更新関係は試験的なものとして割り切って、全て composer を使用するのもアリ。
このあたりは WordPress のほうがお手軽。

アップデー用の composer.json を取得するには git を使用すればいいのかな?
あとで調べてみよう。