此处不允许使用YAML映射值-可能出现缩进问题?

时间:2019-11-22 12:58:51

标签: yaml circleci

因此,我尝试学习CircleCI并遵循入门指南:https://circleci.com/docs/2.0/getting-started/

config.yml:

version: 2
 jobs:
   one:
     docker:
       - image: circleci/ruby:2.4.1
     steps:
       - checkout
       - run: echo "A first hello"
       - run: sleep 25
   two:
     docker:
       - image: circleci/ruby:2.4.1
     steps:
       - checkout
       - run: echo "A more familiar hi"
       - run: sleep 15
 workflows:
   version: 2
   one_and_two:
     jobs:
       - one
       - two

这将返回

Error: Unable to parse YAML
mapping values are not allowed here
 in 'string', line 2, column 6:
     jobs:
         ^

我不明白问题所在。从文档看来,它是正确的缩进级别。那么,此错误的根源到底是什么?

1 个答案:

答案 0 :(得分:0)

文档清楚地表明versionjobs必须处于相同的缩进级别。如果您进一步缩进jobs,则会使其成为标量2的一部分。

这将是有效的YAML:

version: 2
 jobs

并等于:

version: 2 jobs

但是,:之后的jobs使其无效,因为YAML不允许隐式键为多行(version:是适当的隐式键)。

要解决该错误,只需使jobs缩进不超过version