Developer Center

Environments

Create environments for different release stages in your company.

What is an Environment?

An environment corresponds to a stage, where your software is shipped. Each environment can be in a different cloud account, cloud region or cloud if you prefer.

As a software team, you choose where you code gets shipped and PowerTools does the rest.

Software stages

Each software team has opinions about what "stages" they would like to ship software to, before releasing it to customers.

Whether you are shipping software applications to internal users, public users or both, PowerTools lets you design how software should be released.

You can name your environments whatever you like, whether alpha beta or test, stage and prod.

You can have as many environments as you like in PowerTools

Release Environments

In PowerTools, a single environment is marked as a --release environment. A release environment is considered a "final" or production environment where end users interact with your service.

In your .powertools/workspace.yml schema, a single environment will have the ``.

Services

Each service declares which environments it is deployed too in it's service.yml schema.

environments:
  - prod
  - stage

We will be launching CD and promotions soon.

Add an environment

Adding an environment to your PowerTools workspace is as simple as adding a few lines of code:

environments:
  - name: prod
    cloud: aws
    cloud_account_id: abc123
    cloud_region: us-east-1

    release: true

For a full list of parameters, reference the workspace schema docs.

Once you have updated your .powertools/workspace.yml schema, you can sync your workspace using pt workspace sync.

Running workspace sync will take up to 10 minutes when a new environment is added.