如何解决`jekyll build` 有错误,但 gitlab ci 仍在继续
我有一个在 Gitlab 页面上运行的 Jekyll 网站,其中一个页面包含错误。 Jekyll 发现并报告了此错误,但该网站仍在部署,只是没有该页面。
$ jekyll build -d public
...
Bundle complete! 5 Gemfile dependencies,29 gems Now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux-musl]
Configuration file: /builds/TheOddler/mjb/_config.yml
Source: /builds/TheOddler/mjb
Destination: /builds/TheOddler/mjb/public
Incremental build: disabled. Enable with --incremental
Generating...
Error: YAML Exception reading /builds/TheOddler/mjb/_work/immaculate.md: (<unkNown>): did not find expected key while parsing a block mapping at line 2 column 1
Jekyll Feed: Generating Feed for posts
done in 1.104 seconds.
Auto-regeneration: disabled. Use --watch to enable.
Uploading artifacts for successful job 00:09
Uploading artifacts...
所以它显示 Error: YAML Exception ...
但仍然继续,好像一切正常。
我的 .gitlab-ci.yml
文件中的作业如下所示:
build-jekyll:
stage: build
image: jekyll/jekyll:4.2.0
script:
- jekyll build -d public
artifacts:
paths:
- public
only:
- master
为什么会这样?有没有办法让流程失败,或者至少将其报告为警告,以便我知道出了什么问题?
谢谢!
解决方法
发生这种情况是因为 Jekyll 尽管输出中存在错误,但返回退出代码 0。您可以尝试添加 --strict_front_matter
选项,让 Jekyll 返回非零退出代码。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。