Skip to main content

AWS SAM CLI is a CLI tool for local development and testing of Serverless applications

Project description

AWS SAM (Beta)

Apache-2.0 SAM CLI Version

The AWS Serverless Application Model (SAM) is an open-source framework for building serverless applications. It provides shorthand syntax to express functions, APIs, databases, and event source mappings. With just a few lines of configuration, you can define the application you want and model it.

-Getting Started with AWS SAM

Get Started

To get started with building SAM-based applications, use the SAM CLI. SAM CLI provides a Lambda-like execution environment that lets you locally build, test, debug, and deploy applications defined by SAM templates.

Next Steps: Learn to build a more complex serverless application.

Detailed References: Explains SAM commands and usage in depth.

Why SAM

  • Single-deployment configuration. SAM makes it easy to organize related components and resources, and operate on a single stack. You can use SAM to share configuration (such as memory and timeouts) between resources, and deploy all related resources together as a single, versioned entity.

  • Local debugging and testing. Use SAM CLI to locally build, test, and debug SAM applications on a Lambda-like execution environment. It tightens the development loop by helping you find & troubleshoot issues locally that you might otherwise identify only after deploying to the cloud.

  • Deep integration with development tools. You can use SAM with a suite of tools you love and use.

  • Built-in best practices. You can use SAM to define and deploy your infrastructure as configuration. This makes it possible for you to use and enforce best practices through code reviews. Also, with a few lines of configuration, you can enable safe deployments through CodeDeploy, and can enable tracing using AWS X-Ray.

  • Extension of AWS CloudFormation. Because SAM is an extension of AWS CloudFormation, you get the reliable deployment capabilities of AWS CloudFormation. You can define resources by using CloudFormation in your SAM template. Also, you can use the full suite of resources, intrinsic functions, and other template features that are available in CloudFormation.

What is this Github repository? 💻

This Github Repository contains source code for SAM CLI. Here is the development team talking about this code:

SAM CLI code is written in Python. Source code is well documented, very modular, with 95% unit test coverage. It uses this awesome Python library called Click to manage the command line interaction and uses Docker to run Lambda functions locally. We think you'll like the code base. Clone it and run make pr!

Contribute to SAM

We love our contributors ❤️ We have over 100 contributors who have built various parts of the product. Read this testimonial from @ndobryanskyy to learn more about what it was like contributing to SAM.

Depending on your interest and skill, you can help build the different parts of the SAM project;

Enhance the SAM Specification

Make pull requests, report bugs, and share ideas to improve the full SAM template specification. Source code is located on Github at awslabs/serverless-application-model. Read the SAM Specification Contributing Guide to get started.

Strengthen SAM CLI

Add new commands or enhance existing ones, report bugs, or request new features for the SAM CLI. Source code is located on Github at awslabs/aws-sam-cli. Read the SAM CLI Contributing Guide to get started.

Update SAM Developer Guide

SAM Developer Guide provides comprehensive getting started guide and reference documentation. Source code is located on Github at awsdocs/aws-sam-developer-guide. Read the SAM Documentation Contribution Guide to get started.

Join the SAM Community on Slack

Join the SAM developers channel (#samdev) on Slack to collaborate with fellow community members and the AWS SAM team.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aws-sam-cli-0.23.0.tar.gz (269.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

aws_sam_cli-0.23.0-py3-none-any.whl (386.6 kB view details)

Uploaded Python 3

aws_sam_cli-0.23.0-py2-none-any.whl (386.6 kB view details)

Uploaded Python 2

File details

Details for the file aws-sam-cli-0.23.0.tar.gz.

File metadata

  • Download URL: aws-sam-cli-0.23.0.tar.gz
  • Upload date:
  • Size: 269.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/36.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.6

File hashes

Hashes for aws-sam-cli-0.23.0.tar.gz
Algorithm Hash digest
SHA256 409e3497d57ae90d1ce2cae62d5964880b22d41da4d2e90831ae2ca37a593e1f
MD5 373cd8621784871dd3519e44bddb3d65
BLAKE2b-256 4b4fbab2b09d6ec0138a9b49a8f067a15d4d13318e3916306f695931aada2bdb

See more details on using hashes here.

File details

Details for the file aws_sam_cli-0.23.0-py3-none-any.whl.

File metadata

  • Download URL: aws_sam_cli-0.23.0-py3-none-any.whl
  • Upload date:
  • Size: 386.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/36.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.6

File hashes

Hashes for aws_sam_cli-0.23.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5cd82478f74df2e6a987e650001a500537c3360703458d34b0451078807cc36b
MD5 b1ad0ee403926a6f922c88bcfed3c02a
BLAKE2b-256 43ec7bce865be7779859906d7c405bffc453146b3dae148184866981f85fef2e

See more details on using hashes here.

File details

Details for the file aws_sam_cli-0.23.0-py2-none-any.whl.

File metadata

  • Download URL: aws_sam_cli-0.23.0-py2-none-any.whl
  • Upload date:
  • Size: 386.6 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/36.8.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/2.7.6

File hashes

Hashes for aws_sam_cli-0.23.0-py2-none-any.whl
Algorithm Hash digest
SHA256 161630e7116dcabdbba00871fbaa32b2beb27492223ebd94ccea13b7d4cb50ba
MD5 b2274dcae944b74f32c108758606bec9
BLAKE2b-256 2c201e236d3c4bf40fa13d4ee7b30400e7dfcd5594d5bead45161790528c6acf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page