みなさんこんにちは!
最近はRailsとSwiftで四苦八苦してるたがみです! 久しぶりにCakePHPを触る機会があり、忘れちゃいけないのでブログに残しとこう!と思った次第です。
今回の例は、 あるプロジェクトでcomposerを使ってプラグイン等を管理しているが、過去のプラグインでPackagistに登録されていない。どうやれば解決出来るんだっけ? です!
それではいってみましょう!
Composerでzipを扱う
今回インストールしたかったプラグインはACLをGUIで簡単に確認することが出来るプラグイン「Plugin ACL」です。 とても便利なのですが、DLしてプラグインの中身を見る限り、Packagistに登録されていない?
※9/27 12:30 追記 Packagistに登録されていました!僕の確認ミスです!ただ有志の方が非公式で登録されているようです。 alaxos/acl – Packagist
DLするURLはこちらですが、これをComposerでインストール出来るようにしたいと思います!
ComposerではPackagistに登録されているものも扱えますし、zipでまとめられているプラグインのURLを用いてインストールすることも出来ます。 なので今回は先ほどDLしたURLからインストール出来るようにします。
composer.jsonに以下のように書けばインストール出来ます!
composer.json
{
"repositories": {
{
"type": "package",
"package": {
"name": "alaxos/plugin_acl",
"version": "2.3.0",
"dist": {
"url": "http://www.alaxos.org/download/alaxos_acl_2.3.0.zip",
"type": "zip"
}
}
}
},
"require": {
"alaxos/plugin_acl": "2.3.0"
}
}
ハイライトしてある6行目の名前をrequireの中の16行目で使用することが出来るんですね! 知ってしまえば簡単なんですが、こういうのって探さないと書けないですよね・・・
皆様の役に立てれば!
最近出たCakePHPでのCIの方法を書いた本 一回目を通さないとなー ちなみに個人的にはCircleCIおすすめです!!
インプレス
売り上げランキング: 3,318
