WP KUSANAGIプラグインをアップデートする


はじめに

WordPressのサーバにKUSANAGIを使っています。とても早くて便利です。
KUSANAGIのシステムの一部としてWP KUSANAGIプラグインがあるのですが、そのプラグインをバージョンアップした時のメモです。

ざっくりまとめ

  1. 公式のやり方あります。でも今回は動かなかったです。
  2. yumのパッケージを更新します。
  3. /usr/lib/kusanagi/resource/DocumentRoot/wp-content/mu-pluginsから上書きします。

KUSANAGIの名前と構成について

KUSANAGIは「超高速WordPress仮想マシン」ということで、WordPress用のサーバ構成をVPS、クラウドサーバなどで手軽にデプロイできるサービス名、となっています。

KUSANAGI: サービス名の総称。イメージ名。
KUSANAGIコマンド: プロファイル(ドメイン)の追加、HHVMの切り替えをCUIで実行するためのツール
WP KUSANGI: プラグイン(今回はこのアップデート)

アップデートの参考情報

公式サイトからアップデートのための手順が公開されていました。
しかし残念ながら自分の環境では動かせず、手動でアップデートを行いました。

--debug--verbose的なオプションが見つからなかったので手動で行いました。

動くのであれば公式の手順で行ったほうが無難かと思います。

プラグインの確認

今回はWP KUSANAGIプラグインをアップデートします。
プラグインのバージョンについてはWordPressの管理画面から確認できます。
KUSNAGI環境では必須プラグインとなっていますので、「プラグイン>インストール済みプラグイン>必須」から確認します。

配布されているプラグインの最新バージョンについては確認方法が不明でした。

パッケージ全体のアップデート

KUSANAGIではアップデートにyumを使っていて、専用のkusanagiリポジトリを参照しており、そこからアップデートパッケージを取得しています。
こちらをアップデートすることでkusanagiコマンド、インストールされるWP KUSNAGIプラグイン、その他諸々のミドルウェア群がアップデートされるようです。
kusanagiパッケージのバージョンについてはログイン時にfortuneとして表示されています。

まずはyum updateでこのパッケージ群などをアップデートします。

$ yum update -y

システム側のパッケージをアップデートしたくない場合にはkusanagiのみを指定すれば良いかなと思います。

$ yum update kusanagi

パッケージをアップデートすると内包するプラグインもアップデートされます。置いてある場所は下記の通りです。
/usr/lib/kusanagi/resource/DocumentRoot/wp-content/mu-plugins

KUSANAGIのサービスによっては場所によって違うかもしれないです。
locateコマンドで場所を確認しました。

$ locate kusanagi-core

対象ファイルのバージョンを確認しておきます。

$ grep Version /usr/lib/kusanagi/resource/DocumentRoot/wp-content/mu-plugins/wp-kusanagi.php

ちゃんと新しいですね。

このディレクトリを実際のWordPressへコピーします。既存バージョンのプラグインを退避し、ファイルコピーをkusanagiユーザで実行します。

$ cd ~kusanagi/www.l2tp.org/DocumentRoot/wp-content/
$ sudo -u kusanagi sh -c 'mv mu-plugins mu-plugins_; cp -Rp /usr/lib/kusanagi/resource/DocumentRoot/wp-content/mu-plugins ./'

WordPressの管理画面でバージョンを確認しておきます。

上がってますね。

キャッシュ系のphpファイルも更新しておくようにします。

公式の手順とは違うので間違ってるかもしれませんが、以上の手順でバージョンアップできたようです。