Skip to content

widdix/aws-cloudformation-github-deploy

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace
 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

112 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Deploy CloudFormation Stack(s) for GitHub Actions

Deploys AWS CloudFormation stacks.

Usage

To deploy a single stack:

- uses: widdix/aws-cloudformation-github-deploy@v3
  with:
    name: StackA
    template: a.yaml
    parameter-overrides: Param1=a1,Param2=a2

To dedploy multiple stacks in parallel:

- uses: widdix/aws-cloudformation-github-deploy@v3
  with:
    name: |
      StackA
      StackB
    template: |
      a.yaml
      b.yaml
    parameter-overrides: |
      MyParam1=a1,MyParam2=a2
      MyParam1=b1

To dedploy multiple stacks in parallel using the same settings for all stacks:

- uses: widdix/aws-cloudformation-github-deploy@v3
  with:
    name: |
      StackA
      StackB
      StackC
    template: |
      a.yaml
      b.yaml
      c.yaml
    disable-rollback: "1" # applies to all three stacks

To dedploy multiple stacks in parallel passing in no values for a specific stack using a empty line:

- uses: widdix/aws-cloudformation-github-deploy@v3
  with:
    name: |
      StackA
      StackB
      StackC
    template: |
      a.yaml
      b.yaml
      c.yaml
    parameter-overrides: |
      Param1=a1,MyParam2=a2
      
      Param1=c1

The action can be passed a CloudFormation Stack name and a template file. The template file can be a local file existing in the working directory, or a URL to template that exists in an Amazon S3 bucket. It will create the Stack if it does not exist, or create a Change Set to update the Stack.

See action.yml for the full documentation for this action's inputs and outputs.

Example

name: Deploy

on: [push]

jobs:
  deploy:
    name: Deploy
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - uses: aws-actions/configure-aws-credentials@v4
      with:
        # ...
        aws-region: us-east-1
    - id: core
      uses: widdix/aws-cloudformation-github-deploy@v3
      with:
        name: StackA
        template: a.yaml
        parameter-overrides: Param1=a1,MyParam2=a2
    - uses: widdix/aws-cloudformation-github-deploy@v3
      with:
        name: |
          StackB
          StackC
        template: |
          b.yaml
          c.yaml
        parameter-overrides: |
          
          Param1=${{ steps.core.outputs.StackA_output_AlertTopicArn }}

About

Deploys AWS CloudFormation Stacks

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages

  • JavaScript 100.0%