YAML Spec Errors adding deployment permissions
Asked by Paul Carey:

Hello I am trying to add deployment permissions to our YAML deployment specs and I am getting the following error

```
Bamboo YAML import failed: Document structure is incorrect: Found following unused properties: QA, Staging, environments, Production, Sandbox, release-naming, deployment / source-plan
```

I have tried many different variations to add the deployment permissions but I am obviously doing something wrong, using bamboo version 7.03 with a spec similar to the below.

```
version: 2

deployment:
  name: Deployment Project
  source-plan: APROJ

release-naming:
  next-version-name: Deployment-${bamboo.buildNumber}
  applies-to-branches: false

environments:
  - Sandbox
  - QA
  - Staging
  - Production

deployment-permissions:
  - users:
      - auser

default-environment-permissions:
  - users:
      - auser
    groups:
      - bamboo-dev
    permissions:
      - view
      - edit
      - deploy

Sandbox:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap sandbox deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

QA:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap qa deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

Staging:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap staging deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

Production:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap production deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean
```

Many thanks in advance


Answers:
author: Alexey Chystoprudov
body: Deployment permissions should be kept at separate YAML document, like this:

\`\`\`

```
version: 2

deployment:
  name: Deployment Project
  source-plan: APROJ

release-naming:
  next-version-name: Deployment-${bamboo.buildNumber}
  applies-to-branches: false

environments:
  - Sandbox
  - QA
  - Staging
  - Production

Sandbox:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap sandbox deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

QA:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap qa deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

Staging:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap staging deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

Production:
  tasks:
    - artifact-download
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose run --rm web bundle exec cap production deploy
  final-tasks:
    - script:
        interpreter: /bin/sh
        scripts:
          - docker-compose down
          - docker system prune --volumes -f
    - clean

---
version: 2

deployment:
  name: Deployment Project
  source-plan: APROJ

deployment-permissions:
  - users:
      - auser
    permissions:
      - view

default-environment-permissions:
  - users:
      - auser
    groups:
      - bamboo-dev
    permissions:
      - view
      - edit
      - deploy
```

\`\`\`

comments: author: Paul Carey
body: Thank you very much, working fine now ?