Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aws-actions/setup-sam
Action to set up AWS SAM CLI and add it to the PATH
https://github.com/aws-actions/setup-sam
aws-sam-cli cicd sam serverless
Last synced: 7 days ago
JSON representation
Action to set up AWS SAM CLI and add it to the PATH
- Host: GitHub
- URL: https://github.com/aws-actions/setup-sam
- Owner: aws-actions
- License: apache-2.0
- Created: 2021-03-16T20:41:45.000Z (almost 4 years ago)
- Default Branch: main
- Last Pushed: 2024-06-17T19:48:02.000Z (6 months ago)
- Last Synced: 2024-10-30T05:26:18.418Z (about 2 months ago)
- Topics: aws-sam-cli, cicd, sam, serverless
- Language: JavaScript
- Homepage:
- Size: 348 KB
- Stars: 151
- Watchers: 12
- Forks: 23
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
# setup-sam
[![Tests](https://github.com/aws-actions/setup-sam/actions/workflows/test.yml/badge.svg)](https://github.com/aws-actions/setup-sam/actions/workflows/test.yml)
[![Release](https://github.com/aws-actions/setup-sam/actions/workflows/release.yml/badge.svg)](https://github.com/aws-actions/setup-sam/actions/workflows/release.yml)Action to set up [AWS SAM CLI](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-reference.html#serverless-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](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/what-is-sam.html) as part of your workflow.
## Example
Assuming you have a [`samconfig.toml`](https://docs.aws.amazon.com/serverless-application-model/latest/developerguide/serverless-sam-cli-config.html) at the root of your repository:
```yaml
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
token: ${{ secrets.GITHUB_TOKEN }}
- 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html) 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`](https://github.com/actions/setup-python) to automatically set up Python.
### `token`
> **Note**
>
> It is recommended to use token to have higher rate limit. Default [unauthenticated users](https://docs.github.com/en/rest/using-the-rest-api/rate-limits-for-the-rest-api?apiVersion=2022-11-28#primary-rate-limit-for-unauthenticated-users) without a token will have a lesser rate limit enforced.The GITHUB Authentication token to use for calling the GITHUB [Get the latest release](https://docs.github.com/en/rest/releases/releases?apiVersion=2022-11-28#get-the-latest-release) API. Defaults to call the API as unauthenticated request if not specified.
The parameter can accept either [`GITHUB_TOKEN`](https://docs.github.com/en/actions/security-guides/automatic-token-authentication) or [`PAT(Personal Access Token)`](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/managing-your-personal-access-tokens) tokens.
## Security
See [CONTRIBUTING.md](CONTRIBUTING.md#security-disclosures) for more information.
## License
This project is licensed under the [Apache-2.0 License](LICENSE).