Trying to learn Workflows - Expected Type: Sequence

Hi everyone, I’ve perused the CircleCI community and I’m usually able to get my answers through a search. However, this is an issue where I may need some help with and I wasn’t able to find concrete documentation or a resolution through search. If there is a place that I missed, please direct my and I’d be happy to read through any documentation provided.

Goal: I have an older config.yml file that has been working within my development environment for some time now. I’m looking to add workflows in order to filter certain branches and finally adding a local variable for my s3 copy.

The error I’m Receiving:

#!/bin/sh -eo pipefail

ERROR IN CONFIG FILE:

[#/workflows/deploy-step] only 1 subschema matches out of 2

1. [#/workflows/deploy-step/jobs] expected type: Sequence, found: Mapping

What I’ve tried:
I’ve verified that my yaml is correct using http://www.yamllint.com/. I’m understanding that jobs run sequentially, but it is find a mapping. I don’t understand this 100 % as I’ve tried keeping it sequentially.

My File (S3 Redacted):

version: 2.1
jobs:
build:
docker:
# specify the version you desire here
- image: circleci/node:10.14-browsers

working_directory: ~/repo

steps:
  - checkout

  # Setup for AWS
  - run:
      name: Install depends
      command: |
        sudo apt-get update && sudo apt-get install --no-install-recommends -y \
          python3-pip \
          python3-dev \
          python3-setuptools \
          apt-transport-https \
          ca-certificates \
          zip \
          curl \
          gnupg2 \
          software-properties-common
  - run:
      name: Install awscli with pip
      command: |
        pip3 install --upgrade --user wheel
        pip3 install --upgrade --user awscli
        echo 'export PATH=~/.local/bin:$PATH' >> $BASH_ENV

  - run:
      name: npm install
      command: |
        npm install
        npm install @ng-bootstrap/ng-bootstrap

  # run production build
  - run:
      name: Production build
      command: |
            npm run build

Copy build to S3 bucket

workflows:
version: 2.1
deploy-step:
jobs:
-build:
filters:
branches:
only:
- develop
- qa
- master
- run:
name: Production build
command: |
npm run build
- run:
name: Copy build to S3
command: |
aws s3 cp ./dist/myfile/ s3://#mys3bucket/ --recursive --acl public-read

Could you please reformat the config and errors using a code block. Often times yaml issues are due to spacing, and its very hard to see what your file looks like in the current state.