【问题标题】:YAML parsing error. Expected <block end>, but found '-'YAML 解析错误。应为 <block end>,但找到 '-'
【发布时间】:2020-04-25 05:36:18
【问题描述】:
我有以下 config.yml:
- persist_to_workspace:
root: ~/project
paths: *build_cache_paths
# for integration tests:
- /home/circleci/cache/Cypress
我正在尝试将persist_to_workspace /home/circleci/cache/Cypress。我的语法有什么问题?
【问题讨论】:
标签:
build
yaml
integration
filepath
circleci
【解决方案1】:
您的 paths 键的值 *build_cache_paths 是一个别名。这意味着paths 的值是对带有锚点&build_cache_paths 的节点的引用(假设它存在)。
下面两行,您以- 开始一个序列。通常,此级别的序列将是先前隐式键的值。但在这种情况下它不可能,因为键 paths 已经有一个值。因此出现错误。
如果您的目标是将*build_cache_paths 后面的序列与您在下面给出的序列合并:这在 YAML 中是不可能的。 YAML 是一种序列化语言,它不实现对数据的操作(除了一些实现支持但仅适用于映射而不适用于序列的非标准合并键 <<)。