Drupal をアップグレードする

Edge for Private Cloud の Apigee Developer Services ポータル(略して「ポータル」)に、新しいバージョンの Drupal が使用可能になったという通知が表示されることがあります。新しいバージョンとは、Drupal 機能リリース、パッチ、セキュリティ アップデート、その他の種類の Drupal アップデートを指します。セキュリティ アップデートを行う場合は、サイトの安全性を保つために、できるだけ早く Drupal をアップグレードする必要があります。

Drupal コアをアップグレードする

次の手順では、Private Cloud インストールの Drupal 7.x.y を別のマイナー バージョン(Drupal 7.54 ~ 7.59 など)に更新する方法について説明します。

次の点を考慮してください。

  • この手順では、Drupal のインストールのみを更新します。ポータルに付属の Apigee ソフトウェアは更新されません。Apigee ポータル ソフトウェアのアップグレードについては、ポータルをアップグレードするをご覧ください。

    Private Cloud のアップグレード(4.18.05 から 4.19.01 など)中に、Apigee 更新ユーティリティによって Drupal のバージョンが実際にダウングレードされた場合は、Drupal アップグレード ユーティリティの再実行が必要になることがあります。詳細については、Drupal のアップグレードを再実行するをご覧ください。

  • ポータルサイトのルート ディレクトリから Drush(Drupal Shell)コマンドを実行する必要があります。デフォルトでは、ポータルは次のディレクトリにインストールされます。
    • /opt/apigee/apigee-drupal/wwwroot(Nginx)
    • /var/www/html(Apache)
    以下の手順では、Nginx サーバーが上記のデフォルトの場所にインストールされていることを前提とします。

Drupal の現在のバージョンの確認

Drupal のアップデートを開始する前に、Drupal のインストール フォルダから次のコマンドを実行して、現在の Drupal バージョンを確認できます。デフォルトでは、Drupal は /opt/apigee/apigee-drupal/wwwroot にインストールされます。

cd /opt/apigee/apigee-drupal/wwwroot
drush status | grep 'Drupal version'

出力は次の形式のようになります。

Drupal version          :  7.54

Drupal を /opt/apigee/apigee-drupal/wwwroot 以外のディレクトリにインストールした場合は、drush コマンドを実行する前に、必ずそのディレクトリに移動してください。

Drupal のバージョンを更新する

このセクションでは、コマンドラインから Drush コマンドを使用して Drupal のバージョンをアップデートする方法について説明します。Drush を使用した Drupal のアップデート(Drupal.org)もご覧ください。

Drupal のインストールをアップデートするには:

  1. /opt/apigee/apigee-drupal/wwwroot ディレクトリ、またはポータルをインストールしたディレクトリに移動します。
  2. すべてのファイル、ディレクトリ、データベースのフル バックアップを作成します。バックアップを Drupal 以外の場所に保存します。詳しい手順については、ポータルのバックアップをご覧ください。

    .htaccessrobots.txtdefaults.settings.phpsites ディレクトリ内)などのファイルを変更した場合は、アップデート後に変更を再適用する必要があります。また、sites/all ディレクトリで行ったカスタマイズをすべて再適用する必要があります。

  3. サイトをメンテナンス モードにします。
    drush vset --exact maintenance_mode 1
    drush cache-clear all
  4. 次のコマンドを使用して、目的のバージョンの Drupal をインストールします。
    drush pm-update drupal-version

    ここで、version は目的のバージョンです。

    また、drush pm-update drupal を実行して Drupal のコアを最新のバージョンに更新することもできます。drush pm-updatestatus を実行して、Drupal コアプロジェクトと contrib プロジェクトで使用可能なマイナー アップデートを一覧表示できます。

  5. .htaccessrobots.txt、または defaults.settings.phpsites ディレクトリ内)に加えた変更を再適用します。
  6. sites/all ディレクトリの変更を再適用します。
  7. サイトのメンテナンス モードを解除します。
    drush vset --exact maintenance_mode 0
    drush cache-clear all

PHP モジュールと Drupal contrib モジュールをアップグレードする

このセクションの上記の手順を使用して Drupal をアップグレードすると、contrib や PHP など、Drupal で使用されるモジュールもアップグレードされます。ただし、Private Cloud と次のリリースの間には、最新の Drupal モジュールを使用してください。

なお、モジュールが /profiles/apigee/modules/contrib にある場合、新しいバージョンを /sites/all/modules/contrib に保存することで、そのモジュールの新しいバージョンに置き換えることができます。Edge for Private Cloud は、/profiles/apigee/modules/contrib の古いバージョンではなく、/sites/all/modules/contrib の新しいバージョンを使用します。詳細については、モジュールのアップデート(Drupal.org)をご覧ください。

以前に /sites/all/modules/contrib に保存されていたモジュールの最新バージョンを含む新しい Private Cloud バージョンをインストールする場合は、/sites/all/modules/contrib からモジュールを削除します。詳細については、モジュールとテーマの移動(Drupal.org)をご覧ください。

アップデート中に問題が発生した場合はどうすればよいですか?

作成したバックアップ ファイルを使用して、サイトを元の状態に復元します。Apigee Edge サポートに連絡し、アップデート中に報告されたエラー メッセージを知らせます。