[CakePHP2.x]自作のプラグインをgithubに登録してcomposer経由で使う

CakePHPのプラグインをgithub経由でcomposerを使って公開する場合のメモ。

まず、公開するライブラリ側から。
一般的なcomposer.jsonの書き方で構いません。
しかし、CakePHPのPluginの場合、PlugInフォルダに配置してほしいのですが、普通に書くとVendorの下に行ってしまいます。

ということで
“type”: “cakephp-plugin”,
を追加しましょう。
また、配置されるときのフォルダ名を変更する場合は
“extra”: {
“installer-name”: “TableDump”
}
等としてextraセクションにフォルダ名を記述することができます。

具体的なサンプルはこちらを参考にしてください。
https://github.com/codelab-opensrce/table_dump/blob/master/composer.json

次に使う側のcomposer.jsonの書き方
サンプルとして私が公開しているレポジトリを上げます。
[PHP]
“repositories”: [
{
“type”: “vcs”,
“url”: “https://github.com/codelab-opensrce/table_dump”
}
],
“require”: {
“codelab-opensrce/table_dump”: “dev-master”,
},
[/PHP]
読みに行く先としてrepositoriesでレポジトリを明記しないといけないようです。

ちなみに、composerのパッケージリストに登録する場合、レポジトリ名などに大文字が含まれているとNGです。