如何解决即使在退出代码 1 之后继续运行脚本
我正在尝试在 Gitlab 中运行 Cypress 测试。下面是示例脚本。执行'npm run Cypress'后,如果有任何测试用例失败,它会以'exit code 1'退出,接下来的两个命令将不会运行。
有没有办法可以执行接下来的两个命令。接下来的两个命令,生成合并的 Jnuit 和 HTML 报告。
脚本: - cd ./cypress - npm ci - npm 运行赛普拉斯 - npm 运行 mochawesome - npm run junit:merge
我已经尝试过下面提到的解决方案,但没有成功。
script:
- cd ./cypress
- npm ci
- npm run Cypress || exit 0
- npm run mochawesome
- npm run junit:merge
script:
- cd ./cypress
- npm ci
- npm run Cypress
after_script:
- npm run mochawesome
- npm run junit:merge
解决方法
一种方法是不提及退出代码,它似乎是动态的,您可以在 ||
运算符之后直接回显某些内容。
npm run Cypress || echo \"The previous command has some errors..Continuing\"
,
使用 after_script
方法实际上应该可以正常工作,正如您从这个最小示例中看到的:
# .gitlab-ci.yml
test:
image: alpine
script:
- echo "Hello after_script!" > test.txt
- exit 1
after_script:
- cat test.txt
输出:
$ echo "Hello after_script!" > test.txt
$ exit 1
Running after_script
Running after script...
$ cat test.txt
Hello after_script!
Cleaning up file based variables
ERROR: Job failed: exit code 1
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。