みなさんこんにちは!
最近は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