如何在YAML中配置别名?
我正试图在YAML文件中写入一些别名,但一直出现错误。如何在YAML中配置别名如何在YAML中配置别名?,yaml,circleci,Yaml,Circleci,我正试图在YAML文件中写入一些别名,但一直出现错误。如何在YAML中配置别名 ...rest_of_code # DEFAULTS checkout-and-attach: &checkout-and-attach checkout: path: ~/app attach_workspace: at: ~/app # iOS Build and Test build-and-test: macos: xcode: "10.2.0"
...rest_of_code
# DEFAULTS
checkout-and-attach: &checkout-and-attach
checkout:
path: ~/app
attach_workspace:
at: ~/app
# iOS Build and Test
build-and-test:
macos:
xcode: "10.2.0"
working_directory: ~/app/ios
steps:
<<: *checkout-and-attach # [ERROR]: Incorrect type expect array
...rest_of_code
…代码的剩余部分
#默认值
签出并附加:&签出并附加
结帐:
路径:~/app
附加工作区:
地址:~/app
#iOS构建和测试
构建和测试:
马科斯:
xcode:“10.2.0”
工作目录:~/app/ios
步骤:
我没有找到用circleci传播数组的方法。
此外,我认为参考资料部分必须在作业部分之前
使用config.yml和参考的示例:
version: 2
references:
init_aws: &init_aws
run:
name: Init aws credentials
command: echo 1
init_env_vars: &init_env_vars
run:
name: Init environment variables
command: echo 2
jobs:
build:
docker:
- image: circleci/node:8.11.3
steps:
- *init_aws
- *init_env_vars
这是一个格式正确的YAML。您的问题在于它的解释:显然,无论是谁在读它(CircleCI?),都希望您提供一个数组,其中您提供的东西不是数组。具体来说,如果错误发生在该位置,签出并附加
(因此也包括步骤
)是一个对象,而不是数组<代码>-我认为这不是有效的YAML。我刚刚粘贴了它,它报告了一个循环引用。cc@amadan不管它值多少钱,我发现CircleCI在YAML引用方面都非常好。我写的代码中包含了几个,它工作得很好。@halfer与JSON不同,YAML可以使用循环引用。它可能是无效的CircleCI配置,但它是有效的YAML。@Amadan:谢谢您的输入。我提出了一个稍微狭隘的观点,即在线解析器拒绝解析它,我认为这是一个警告信号。我对CircleCI的经验是,它能很好地处理参考资料——我想做的事情没有我做不到的。也许我的一些例子会对OP有所帮助。