Skip to main content

CloudFormation CLI Wrapper

Project description

AWS CloudFormation CLI


The missing CloudFormation CLI. Reborn!

cfn-cli is the CloudFormation CLI that AWS never built. Its use dramatically increases the developer friendliness of using CloudFormation at scale, both within developer environments and CI/CD pipelines.

It's designed to be as light a wrapper around CloudFormation as possible, thus avoiding any kind of lock-in. Its use simplifies stack configuration and deployment while allowing for an easy exit to raw CloudFormation JSON style configuration files if desired.

Features:

  • Simple and Intuitive CLI that encapsulates the complexity of CloudFormation operations (Packaging, ChangeSets, Drift, Status etc)
  • Useful and colourful stack deployment output with full event tailing
  • DRY Configuration of stacks in a single YAML file
  • Supports ordered stack operations across AWS accounts and regions
  • Automatic packaging of external resources (Lambda Code, Nested Stacks and many more resources)
  • Loosely coupled cross-stack parameter reference that work cross-region and cross-account
  • Nested ChangeSet support, including full and friendly pretty printing.
  • Stack configuration inheritance across stages and blueprints

cfn-cli in action:

demo

Compatibility

This tool supports Python 3.10 and above. cfn-cli has been tested and validated operational on AWS CloudShell, AWS Cloud 9, AWS Linux 2023 AMIs and within CI/CD pipeline runners operating in GitHub, Gitlab and Azure DevOps.

License

This tool is distributed under the MIT license. The AWS CLI dependent code is distributed under the Apache 2.0 license - see ext_customizations README and LICENCE.

Install

[!IMPORTANT] Python 3.10 and above is required to install cfn-cli

Install from PyPi

pip3 install cfncli

Documentation

See https://cfncli.readthedocs.io/ for documentation covering usage of the CLI and its configuration syntax

Development

See DEVELOPMENT.md for build instructions and development workflow.

cfn-cli Origin Acknowledgement

This code base was forked from https://github.com/Kotaimen/awscfncli who should be acknowledged as the original creator of cfn-cli. The original repo became unsupported and dependencies between it and the native AWS CLI caused install issues and compatibility issues.

I have forked and detached this repo from the original codebase and have spent significant effort in updating dependencies, bringing in modern unit tests, fixing bugs, adding documentation and continue to add new features.

This code base will continue to be maintained separately with feature development that will likely not be paralleled in the original code base.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

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

cfncli-0.6.3-py3-none-any.whl (81.4 kB view details)

Uploaded Python 3

File details

Details for the file cfncli-0.6.3-py3-none-any.whl.

File metadata

  • Download URL: cfncli-0.6.3-py3-none-any.whl
  • Upload date:
  • Size: 81.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for cfncli-0.6.3-py3-none-any.whl
Algorithm Hash digest
SHA256 0cd8ca952b4dcaf25588eef31793974b87369f3027256a9c217a60d76095f877
MD5 e7f29232d2319f55b7ca6b9cc3dabe88
BLAKE2b-256 f80e28baec02977624fd14743376962e93d31f735b1725909825496e5b56eef8

See more details on using hashes here.

Provenance

The following attestation bundles were made for cfncli-0.6.3-py3-none-any.whl:

Publisher: main.yml on andyfase/cfncli

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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