PHP VSCode サーバー 環境構築

「Composer plugin which is currently not in your allow-plugins config」警告対処法

※本サイトはPR表記を含みます。

ある日、CircleCIでビルドを走らせていたときに突然オコされ、ビルドが停止する。

エラー内容

cakephp/plugin-installer contains a Composer plugin which is currently not in your allow-plugins config. See https://getcomposer.org/allow-plugins
Do you trust "cakephp/plugin-installer" to execute code and wish to enable it now? (writes "allow-plugins" to composer.json)

翻訳

Cakephp / plugin-installerには、現在allow-plugins構成にないComposerプラグインが含まれています。 https://getcomposer.org/allow-pluginsを参照してください
「cakephp / plugin-installer」がコードを実行することを信頼し、今すぐ有効にしたいですか? (composer.jsonに「allow-plugins」を書き込みます)

ドキュメントを確認すると、どうやらComposerバージョン2.2移行から、allow-plugin 設定で明示的に許可を与えていないプラグインはcomposer install時に警告確認してくる模様。

 

対処法 - composer.jsonに「allow-plugins」を書き込む

composer.lockでプラグインリストを確認

Q. ねえねえ、プラグインはどうやって確認するの?
A. なあに、composer.lockに情報がのってるじゃろ。それは見ればええ。

まずはcomposer.lockをエディターで開くのじゃ。そして、"type": "composer-plugin", を検索するんじゃ。
そのtypeが当てはまるnameプロパティをみればええ。(ま、わしも教えてもらったんだけど)

 

composer.jsonのconfigプロパティにallow-pluginsを追記

例: Cakephp3/4系では必要になるプラグイン

 composer.json
"config": {
    "allow-plugins": {
        "cakephp/plugin-installer": true  // trueとして明示
    }
},

 

まとめ

各々、composer.lock内でプラグインリストを確認し、それに応じてcomposer.jsonallow-pluginsを明示してあげればOKですね。

数か月後にはすぐに廃れるような記事内容かもですが、同じ境遇に出会った人のために共有しようかと思いました。(σ(゚∀゚ )オレ、ビルド壊したんじゃね?の原因をいち早く見つけるために)

 

じゃね。

-PHP, VSCode, サーバー, 環境構築
-