Skip to content
aws-actions

GitHub Action

Setup AWS SAM CLI

v2 Latest version

Setup AWS SAM CLI

aws-actions

Setup AWS SAM CLI

Setup AWS SAM CLI and add it to the PATH

Installation

Copy and paste the following snippet into your .yml file.

              

- name: Setup AWS SAM CLI

uses: aws-actions/setup-sam@v2

Learn more about this action in aws-actions/setup-sam

Choose a version

setup-sam

Tests Release

Action to set up AWS SAM CLI and add it to the PATH.

This action enables you to run AWS SAM CLI commands in order to build, package, and deploy serverless applications as part of your workflow.

Example

Assuming you have a samconfig.toml at the root of your repository:

on:
  push:
    branches:
      - main
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - uses: aws-actions/setup-sam@v2
        with:
          use-installer: true
      - uses: aws-actions/configure-aws-credentials@v2
        with:
          aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
          aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
          aws-region: us-east-2
      # Build inside Docker containers
      - run: sam build --use-container
      # Prevent prompts and failure when the stack is unchanged
      - run: sam deploy --no-confirm-changeset --no-fail-on-empty-changeset

See AWS IAM best practices for handling AWS credentials.

Inputs

version

The AWS SAM CLI version to install. Installs the latest version by default.

use-installer

Note

This is the recommended approach on supported platforms. It does not require Python to be installed, and is faster than the default installation method.

Currently supports Linux x86-64 runners.

Set to true to set up AWS SAM CLI using a native installer. Defaults to false.

python

Note

Unused if use-installer is set to true.

The Python interpreter to use for AWS SAM CLI. Defaults to python on Windows, and python3 otherwise.

You can use actions/setup-python to automatically set up Python.

Security

See CONTRIBUTING.md for more information.

License

This project is licensed under the Apache-2.0 License.