Integrating with AWS for deployment enables automated, consistent, and secure software delivery. is a CI/CD platform that simplifies the process of build, testing, and deployment, making it accessible even for teams without deep DevOps expertise, and improving the developer experience of development teams.


Setting Up with AWS

When setting up with AWS, you can use any of our AWS workflows, like the ECS Fargate workflow or the EKS EC2 ASG workflow.

  • Sign up for an AWS account if you don't have one.
  • Create an IAM user with programmatic access. This will give you an access key ID and a secret access key.

Create Secrets from Settings

  • Back in your dashboard, create your secrets by selecting Settings and Secrets.

Secrets are encrypted environment variables that utilizes within your workflow to build and run your application and deployments.

You will create four secrets:

  • To create your AWS SECRET KEY AND ACCESS KEY. Log into your AWS Account, select the Identity and Access Management (IAM) dashboard, create a new user, copy the Access Key ID and Secret access key, and paste it into your secret dashboard on
  • Your AWS ACCOUNT NUMBER can be obtained from your User ID on the top right corner of your AWS Console.

Generate GitHub Token

Generate your GITHUB_TOKEN from Github by going to Settings → Developer settings → Personal access tokens → Generate a new token on your Github profile.

  • Back in your Secrets dashboard, create your secret key/value pairs.

Next, your AWS credentials will be stored in your ops.yml file. The ops.yml file is a configuration file used by This file is written in YAML (Yet Another Markup Language) and is used to manage the automated building and testing of software projects within the environment.

Creating an Ops.yml File

Example of a basic ops.yml file:

version: "1"
  - name: simple-pipeline
    description: Simple build and deployment pipeline
        - GITHUB_TOKEN
        - AWS_TOKEN
        - AWS_ACCOUNT
      - "github:workflows-sh/my-repo:pull_request.opened"
      - name: simple-build
        description: Basic build job
          - git clone https://oauth2:[email protected]/$GH_ORG/$REPO
          - cd $REPO
          - git fetch -a && git checkout "${REF}"
          - docker build -f Dockerfile -t my-app:latest .
          - docker tag my-app:latest$ORG/$REPO:$CLEAN_REF
          - docker push$ORG/$REPO:$CLEAN_REF

Ensure that the GitHub repository name and the event type in the events section match your project's configuration. This will allow your pipeline to respond correctly to the desired GitHub events.

Security Best Practices

  • Employ IAM roles and policies for detailed access control.
  • Implement Multi-Factor Authentication (MFA) for better security.


  • Add AWS credentials (Access Key ID and Secret Access Key) as secrets or environment variables.

Deployment Script

Scripting Deployments:

  • Use scripts in the ops.yml to automate deployment tasks.
  • Scripts can handle tasks like package installation, testing, building, and deployment commands.

Example deployment script:

aws s3 cp ./build s3://my-deployment-bucket/ --recursive

Monitoring and Maintenance

Monitor Deployments:

  • Use's dashboard insights to watch your builds and deployments.
  • Set up alerts for any issues in build failures or deployment problems.

Regular Updates and Audits:

  • Regularly update your configurations and AWS settings.
  • Conduct audits on your AWS environment for security and compliance.


Using for AWS deployments offers an enhanced, automated way to securely and efficiently deploy applications. By following these steps and adhering to best practices, you can simplify your deployment process, minimize errors, and ensure consistent, secure application deployment.

Ready to introduce to your team and enhance your workflows? Book a demo today!