1

我们有一个自动运行测试的 CI 服务器。一切都很好,除了今天早上一个构建被推送,当“phpunit”运行时它遇到了一些错误的 php 语法,它退出了下面的执行链,所以它artisan ci:cleanup永远不会运行。

php artisan ci:prepare
./vendor/bin/phpunit
php artisan ci:cleanup

GitLab-CI 的日志输出的尾部如下所示,表明此解析错误阻止了清理运行。

./vendor/bin/phpunit
PHP Parse error:  syntax error, unexpected '<<' (T_SL) in /home/gitlab_ci_runner/gitlab-runners/gitlab-ci-runner/tmp/builds/project-9/app/lib/Tests/Shared/Controllers/Api/AuthTest.php on line 64

我宁愿避免编写 bash 文件或其他东西来处理执行/错误,但我仍然需要像往常一样在 GitLab-CI 的日志中显示输出。

在不阻止清理运行的情况下,我应该如何最好地处理这种终止错误?

4

1 回答 1

0

解决此问题的一种(相当hacky)方法是添加|| true到命令的末尾。例如:

./vendor/php/phpunit || true

这应该可以解决任何错误陷阱。

于 2014-05-02T13:32:20.557 回答