Appveyor部署到2个不同的位置基于分支提交yml解析错误

Appveyor deployment into 2 different locations based on branch commit yml parse error

我有一个非常简单的场景,我想根据在开发分支或主分支上发生的提交部署到两个不同的位置。因为在这些分支上不可能有两个不同的 yml 文件,因为每次我在这里看到这篇文章时,一个都会覆盖另一个:

https://www.appveyor.com/blog/2014/07/23/appveyor-yml-and-multiple-branches/

这篇文章说得很清楚,我们可以使用一个 yml 文件来设置 htis,但是我遇到了一个错误: 解析错误 appveyor.yml: (Line: 35, Col: 1, Idx: 554) - (Line: 35, Col: 9, Idx: 562): Duplicate key

这是我的 yml

image: Visual Studio 2017

environment: 
  nodejs_version: "6"

platform: 
  - x64

install: 
  - ps: Install-Product node $env:nodejs_version 
  - yarn install --no-progress

build_script: 
  - yarn ng -- build --prod --aot --no-progress

cache: 
  - node_modules -> yarn.lock 
  - "%LOCALAPPDATA%/Yarn"

branches: 
  only: 
  - master

artifacts: 
  path: '\dist\' 
  name: NINJASPA

before_deploy: 
  ssh root@ipadresshere -t "ls; rm -r -v /var/www/asp/ninjacodingfront/*; ls; exit; bash --login"

deploy: 
  provider: Environment 
  name: NinjaCodingFront

branches: 
  only: 
  - dev

artifacts: 
  path: '\dist\' 
  name: NINJASPADEV

before_deploy: 
  ssh root@ipadresshere -t "ls; rm -r -v /var/www/asp/ninjacodingfrontdev/*; ls; exit; bash --login"

deploy: 
  provider: Environment 
  name: NinjaCodingFrontDev

Line 35 is where branches dev comes come:

branches: --------------- (line 35) 
  only: 
  - dev

不知道下一步该怎么做,请帮忙。希望它可以解决。谢谢!

所以最后是这样完成的:

image: Visual Studio 2017

platform:
  - x64

environment:
   nodejs_version: "6"

install:
  - ps: Install-Product node $env:nodejs_version
  - yarn install --no-progress

build_script:
  - yarn ng -- build --prod --aot --no-progress

cache:
  - node_modules -> yarn.lock
  - "%LOCALAPPDATA%/Yarn"


for:


-
  branches:
    only:
      - master

  deploy:
    provider: Environment
    name: NinjaCodingFront

  artifacts:
    path: '\dist\'
    name: NINJASPA

  before_deploy:    
    ssh root@xxxxxxxxx -t "ls; rm -r -v /var/www/asp/ninjacodingfront/*; ls; exit; bash --login"



-
  branches:
    only:
      - dev

  deploy:
    provider: Environment
    name: NinjaCodingFrontDev

  artifacts:
    path: '\dist\'
    name: NINJASPADEV

  before_deploy:    
    ssh root@xxxxxxxxxxx -t "ls; rm -r -v /var/www/asp/ninjacodingfrontdev/*; ls; exit; bash --login"