A Python library for reading, writing and pre-processing CloudFormation YAML stacks
Project description
CloudFormation Utils
A Python library for reading, writing and pre-processing CloudFormation YAML stacks.
Features
- Read and write CloudFormation templates in YAML format
- Pre-process templates with custom logic
- Validate template structure
- Support for modern Python versions (3.8+)
Installation
Install from PyPI:
pip install cloudformation-utils
For development:
git clone https://github.com/NitorCreations/cloudformation-utils.git
cd cloudformation-utils
make setup-dev
Usage
import cloudformation_utils
# Your usage examples here
Development
This project uses modern Python packaging and development tools:
Setup Development Environment
make setup-dev
This will:
- Install the package in development mode
- Install all development dependencies
- Set up pre-commit hooks
Available Commands
make help # Show all available commands
make test # Run tests
make test-cov # Run tests with coverage
make lint # Run linting
make format # Format code
make type-check # Run type checking
make quality # Run all quality checks
make build # Build the package
make clean # Clean build artifacts
Code Quality
This project uses:
- Ruff for linting and formatting
- MyPy for type checking
- pytest for testing
- pre-commit for git hooks
Testing
Run tests:
make test
Run tests with coverage:
make test-cov
Releasing
Releases are automated via GitHub Actions when you push a tag:
git tag v0.0.4 # Next version after current 0.0.3
git push origin v0.0.4
Requirements
- Python 3.8 or higher
- PyYAML 6.0 or higher
License
This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Run the test suite and quality checks
- Submit a pull request
Please ensure your code follows the project's coding standards and includes appropriate tests.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cloudformation_utils-0.0.3.tar.gz.
File metadata
- Download URL: cloudformation_utils-0.0.3.tar.gz
- Upload date:
- Size: 26.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0ad5f47a8ab59ca936b51007b2919ba618d961824f87406a68372ad82d6f7872
|
|
| MD5 |
a465fd24b148367803156f50799844f0
|
|
| BLAKE2b-256 |
350d116a5485dcd15b646222354e2448d2ac99a47888d06f756ea347e96fe451
|
File details
Details for the file cloudformation_utils-0.0.3-py3-none-any.whl.
File metadata
- Download URL: cloudformation_utils-0.0.3-py3-none-any.whl
- Upload date:
- Size: 13.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d59d4aba83fb9a96390699fc006d968e03bcc539c36844882d0c856f80905dc3
|
|
| MD5 |
d6fe4a9351acdf0521cc3698ed93bffa
|
|
| BLAKE2b-256 |
e53f0b5fd2b98527a0b8750d977c9059cd4644eb16769318667350ecc3ca4898
|