github cloudposse/atmos v1.4.0

latest releases: v1.88.1, v1, v1.88.0...
2 years ago

what

  • Add workflows
  • Define workflows in YAML
  • Support two types of workflows: atmos and shell
  • Allow specifying the atmos stack in 3 different ways:
    • on the command line in the command attribute in the workflow steps
    • as stack attribute in each workflow step
    • as stack attribute in the workflow itself
  • Update atmos terraform shell command

why

  • Allow sequential execution of atmos and shell commands
  • Update atmos terraform shell command to use the bash shell by default on Unix systems if the SHELL ENV var is not defined

test

atmos workflow test-1 -f workflow1
Executing the workflow 'test-1' from 'examples/complete/workflows/workflow1.yaml'

description: Test workflow
steps:
- command: echo Command 1
  stack: ""
  type: shell
- command: echo Command 2
  stack: ""
  type: shell
- command: echo Command 3
  stack: ""
  type: shell
- command: echo Command 4
  stack: ""
  type: shell
- command: echo Command 5
  stack: ""
  type: shell
stack: ""


Executing workflow step: echo Command 1

Executing command:
/bin/echo Command 1
Command 1

Executing workflow step: echo Command 2

Executing command:
/bin/echo Command 2
Command 2

Executing workflow step: echo Command 3

Executing command:
/bin/echo Command 3
Command 3

Executing workflow step: echo Command 4

Executing command:
/bin/echo Command 4
Command 4

Executing workflow step: echo Command 5

Executing command:
/bin/echo Command 5
Command 5


atmos workflow -f workflow1 terraform-plan-all-tenant1-ue2-dev
Executing workflow step: terraform plan test/test-component-override-2
Stack: tenant1-ue2-dev

Executing command:
/Users/andriyknysh/Documents/Projects/Go/bin/atmos terraform plan test/test-component-override-2 -s tenant1-ue2-dev

Variables for the component 'test/test-component-override-2' in the stack 'tenant1/ue2/dev':

enabled: true
environment: ue2
namespace: eg
region: us-east-2
service_1_list:

Don't miss a new atmos release

NewReleases is sending notifications on new releases.