Skip to main content

B.AwsCf

A python based package that enables convenient interaction with CloudFormation service boto3 library.

Description

Interacting with AWS CloudFormation service via boto3 is great. However, boto3 is far too low-level library giving you great flexibility but too less productivity. This B.AwsCf library makes interaction with CloudFormation more object-oriented and more high-level. It eliminates things like pagination with "NextToken" and so on.

Remarks

Biomapas aims to modernise life-science industry by sharing its IT knowledge with other companies and the community. This is an open source library intended to be used by anyone. Improvements and pull requests are welcome.

  • Python 3
  • AWS CloudFormation
  • boto3

Assumptions

The project assumes the following:

  • You have basic-good knowledge in python programming.
  • You have basic-good knowledge in AWS.
  • You have basic-good knowledge in AWS CloudFormation.

Useful sources

Install

The project is built and uploaded to PyPi. Install it by using pip.

pip install b_aws_cf

Or directly install it through source.

pip install .

Usage & Examples

Programmatic usage

Two main constructs of this library is Stack and Stacks. The Stack class lets you work with a single stack and Stacks class lets you work with lists of stacks.

Stack class example.

from b_aws_cf.stack import Stack

# Create stack object just by knowing its name:
stack = Stack.from_name('MyCoolStack')

# Gets this stack's outptus:
outputs = stack.get_outputs()

# Delete this stack:
stack.delete()

Stacks class example:

from b_aws_cf.stacks import Stacks

# List all of the stacks in your account:
stacks = Stacks().list()

# Delete all of the stacks with some specific prefix:
Stacks().delete('MyPrefix')

CLI usage

The library exposes CLI commands. Run (to find about more):

cf --help

Testing

This project has integration tests based on pytest. To run tests, simply run:

pytest

Contribution

Found a bug? Want to add or suggest a new feature?
Contributions of any kind are gladly welcome. You may contact us directly, create a pull-request or an issue in github platform. Lets modernize the world together.

Release history

0.2.1

  • Add printing on deletion action.

0.2.0

  • Raise explicit exception if stack is not found.

0.0.1

  • Initial build.

Metadata

Release files for b-aws-cf 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for b-aws-cf 0.2.1
File Size Uploaded Provenance
b_aws_cf-0.2.1.tar.gz 14.0 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for b-aws-cf 0.2.1
File Interpreter ABI Platform
b_aws_cf-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 29.2 kB

Release files / b_aws_cf-0.2.1.tar.gz

Download URL b_aws_cf-0.2.1.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
4592638d1dc01cc93ab70a712ef37aa06424bfee8c9d089b078a23b1065d6ef2
BLAKE2b-256 checksum
How to use checksums
4dc37957c216ddeabb2288e84e90ee8c745ffb025104128a9775caf687c71a50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Release files / b_aws_cf-0.2.1-py3-none-any.whl

Download URL b_aws_cf-0.2.1-py3-none-any.whl
Size 15.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4b1e899a3be03bbea6936c4b6bd848ed72d3edd6e30c92996fe28846d4eb2c2a
BLAKE2b-256 checksum
How to use checksums
0da8eff8bacb0941042b33d401056b8d003b6041c43157dd75f0d9129f9f573a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/4.8.2 pkginfo/1.8.2 requests/2.22.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.10

Security for b-aws-cf 0.2.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page