春のJAWS-UG 三都物語 2013でMTに関するLTしました
AWSを使ったこと、ほぼなかったんですけど、これをキッカケにして、今後は活用するようになりそうです。
発表内容をシェアするとともに、ちょっと考えることを書きます。5分という短い時間でしたが、伝えたいことは伝えられたんじゃないかと思います。
思ったこと
Wordpress界隈に比べて、MT界隈のAWSのノウハウは、ウェブを見る限りではまだ少ないように思います。
特に、Movable Typeは静的ファイル出力が前提のソフトウェアなので、S3やCloudFrontがもっと活用されるようになるといいなと思いますし、自分は今後活用しようと思います。
また、スライドの中では、管理画面なくてもいいじゃんみたいな話をしていますが、これは極端な話だったかもしれません。しかし、MTはPerlで書かれたソフトウェアなので、コマンドラインツールとの親和性は実際高いと思っています。CPANもあるし。
コードベースでMTを操作すること
ネタに走ってしまって、多分あまり伝わってないので、コードベースでMTを操作するということについては、本エントリでもう少し掘り下げることにします。
MT::Toolクラスのサブクラスを作れば簡単にコマンドラインツールを作ることができます。*1
管理画面経由にせよ、コマンドラインツール経由にせよ、使うのはMTのアーキテクチャです。MTのアーキテクチャは、管理画面に特化しているわけではなく、コードから利用することも可能です。コードから利用するのはWordpressより扱いやすいように思います。Perl製のソフトウェアということもありますが、こういう点がMovable Typeの方が弄っていて楽しいと思う理由なんだと思います。
MTは、ライブラリを直接use
して利用できる作りにもなっています。*2
プラグインかtoolsスクリプトかの違いは、MTのオペレーションツールがブラウザかターミナルかの違いだけです。
自分は、コマンドラインツールが好きなので、今後、MTのコマンドラインツールをいろいろ作ることでしょう。コマンドラインツールをしっかり作ってしまえば、どうしても管理画面上から利用したい時には、ブラウザ用のインターフェイスを追加するだけで済むはずです。たぶん。
ついでなので、作りかけで途中になっていた、MTObjectImporterというプラグインをgithubに上げました。YAMLで記事をインポートしたいなと思って作り始めたら、JSONも構造にてるし、EntryとPageも構造似てるしってことになって、ひとつメタなプラグインにしました。
大したことは書いてありませんが、ライブラリをuse
して利用できることを意識して作ってあります。こんな感じで、今後もまずはコマンドラインツール、必要に応じてブラウザ用のインターフェイスを用意する、みたいな感じで作ろうと思ってます。テストもしやすいですし。
まとめ
今後、MTらしさを生かしつつAWSを活用したいですね。
*1:perldoc MT::Tool
しましょう
*2:githubのmovabletypeのtディレクトリを見よ