[php] composerが300秒でタイムアウトしてしまう

概要

selenium-side-runnerのE2Eテストがあります。composer.jsonのscriptに登録して、ターミナルで実行したら、300秒でタイムアウトしてしまいました。

$ composer e2etest ... The process "./bin/e2etest.sh" exceeded the timeout of 300 seconds.
Code language: plaintext (plaintext)

優先順位1: 環境変数 COMPOSER_PROCESS_TIMEOUT

一時的にタイムアウト秒数を長くするには、環境変数COMPOSER_PROCESS_TIMEOUTに秒数を設定します。

0はタイムアウトなし無制限です。

$ COMPOSER_PROCESS_TIMEOUT=600 composer e2etest
Code language: JSON / JSON with Comments (json)

または

$ export COMPOSER_PROCESS_TIMEOUT=600 $ composer e2etest
Code language: JSON / JSON with Comments (json)

優先順位2: composer.jsonのconfig

プロジェクトのcomposerのタイムアウトを設定するには、プロジェクトのcomposer.jsonのconfig項目を編集します。

"config": { "process-timeout": 600 },
Code language: JSON / JSON with Comments (json)

ターミナルで、composer configコマンドを実行することでも、composer.jsonが自動編集されます。

$ composer config process-timeout 600
Code language: JSON / JSON with Comments (json)

優先順位3: composer config

ユーザーのcomposerのデフォルトのタイムアウトを設定するには、composer config --globalコマンドで設定します。

$ composer config --global process-timeout 600
Code language: JSON / JSON with Comments (json)

Windows10では、AppData\Roaming\Composer\config.json が自動編集されました。

C:> type %USERPROFILE%\AppData\Roaming\Composer\config.json { "config": { "process-timeout": 600} }
Code language: plaintext (plaintext)

macOSでは、~/.composer/config.json が自動編集されました。

$ cat ~/.composer/config.json { "config": { "process-timeout": 600} }
Code language: JSON / JSON with Comments (json)

Ubuntu 18.04では、~/.config/composer/config.json が自動編集されました。

$ cat ~/.config/composer/config.json { "config": { "process-timeout": 600} }
Code language: JSON / JSON with Comments (json)

タイトルとURLをコピーしました