我有以下命令:
php artisan config:clear
timeout 15 php artisan queue:work
php artisan queue:restart
作业失败,并显示以下信息:
+ php artisan config:clear
Configuration cache cleared!
+ timeout 5 php artisan queue:work
Build step 'Execute shell' marked build as failure
Finished: FAILURE
我需要在15秒后停止该命令php artisan queue:work
,这就是为什么我使用timeout
。
为什么我遇到此错误?没有超时,一切正常。
答案 0 :(得分:0)
据此:https://www.howtoforge.com/linux-timeout-command/#q-how-to-get-commands-exit-status-in-output
timeout
成功时的退出代码为124。
由于脚本的退出代码不为0(要么是因为这是您运行的最后一个命令,要么是因为您在脚本中set -e
),因此Jenkins将其视为失败。
由于您知道非0退出代码不是失败,因此可以通过将命令传递到始终以退出代码0退出的另一个命令来解决此问题,例如:
timeout 5 php artisan queue:work | :