github-actions - 为什么我在此 GitHub 操作中收到“Unexpected value ''”错误?
问题描述
我有一个这样的 GitHub 操作步骤(从较大的test.yml
文件中提取):
steps:
- name: Parse
shell: bash
env:
TYPE: ${{matrix.package-type}}
BV: ${{matrix.builder-version}}
# This comment is line 63, the "#" is in column 9
NULL: ${{ matrix.beta-version }}
run: |
echo TYPE is "$TYPE"
echo BV is "$BV"
printf "Null is '%s'\n" "$NULL"
当我运行它时,我收到以下错误:
The workflow is not valid. .github/workflows/test.yml (Line: 64, Col: 9): Unexpected value ''
为什么这条线无效?我如何解决它?
解决方案
事实证明,在 GitHub 操作 YAML 解析器中存在一些将其NULL
视为特殊标记的怪癖。我猜它解析
NULL: ${{ matrix.beta-version }}
好像它是
'': ${{ matrix.beta-version }}
更改NULL
为null
无济于事。(旁注,env
在不区分大小写的比较中进行比较时,键 to 必须是唯一的,这意味着您不能同时拥有FOO
and foo
,即使在设置环境变量名称时会保留大小写。)
最好的修复/解决方法是避免使用“NULL”并使用其他东西,例如“NIL”。但是,如果您必须使用“NULL”,则可以通过将其放在引号中来实现:
"NULL": ${{ matrix.beta-version }}
推荐阅读
- html - 如何在表格的特定单元格中添加文本
- git - 从 GitHub Wiki 事件上的 push --force 中恢复
- python - Pandas 使用 Loc 过滤,但排除行中的值
- katalon-studio - Katalon Studio:项目可能不一致
- java - 在 JPA 规范中应用 Order By
- python-3.x - 在 Python 中循环页面并从网站下载 pdf 文件
- excel - 如何自动填充活动单元格的列直到最后一行
- r - R中的文本挖掘/单词相关性
- c# - 使用 Identity Server 3 缓存外部身份验证 InMemory
- angular - 从应用程序外部调用 Angular Route