Skip to main content

AWS routines for Python projects

Project description

sirtuin

AWS CLI Routines

Report Bug

About

Sirtuin is a collection of AWS CLI routines that automate common deployment tasks for CloudFront distributions and container services.

Tech Stack

Layer Technology
Language Python 3.13
Package Manager uv
CLI Framework Typer
Data Validation Pydantic
Linting & Formatting Ruff
Type Checking ty
Testing Pytest
Cloud AWS CLI

Installation

pip install sirtuin

Or with uv:

uv add sirtuin

Usage

CloudFront Operations

Deploy a CloudFront distribution via a local configuration:

sirtuin cloudfront-deploy .cloudfront -p profile

Invalidate CloudFront cache:

sirtuin cloudfront-invalidate .cloudfront -p profile

Display Content Security Policy headers:

sirtuin cloudfront-headers .cloudfront

Container Operations

Push an updated container to AWS via a stored configuration on S3:

sirtuin container-push s3://bucket/.container -p profile

Deploy a new container to AWS via a stored configuration on S3:

sirtuin container-deploy s3://bucket/.container -p profile

Local Development

Prerequisites

  • Python 3.13
  • uv package manager
  • AWS CLI v2 configured with profiles

Setup

git clone https://github.com/merylldindin/sirtuin
cd sirtuin
make setup

This installs all dependencies and configures pre-commit hooks.

Available Commands

Command Description
make setup Install dependencies + hooks
make setup-hard Clean install from scratch
make format Check code formatting
make format-fix Format code with Ruff
make lint Lint code with Ruff
make lint-fix Auto-fix linting issues
make types Type check with ty
make test Run test suite
make test-coverage Run tests with coverage

Contributing

See CONTRIBUTING.md for guidelines on:

  • Code quality standards
  • Naming conventions
  • Git workflow and conventional commits
  • Pre-commit hooks

License

Apache License 2.0 - see LICENSE for details.

Project details


Download files

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

Source Distribution

sirtuin-1.3.0.tar.gz (20.0 kB view details)

Uploaded Source

Built Distribution

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

sirtuin-1.3.0-py3-none-any.whl (15.4 kB view details)

Uploaded Python 3

File details

Details for the file sirtuin-1.3.0.tar.gz.

File metadata

  • Download URL: sirtuin-1.3.0.tar.gz
  • Upload date:
  • Size: 20.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sirtuin-1.3.0.tar.gz
Algorithm Hash digest
SHA256 5313b7fb28cb09b1ecae121464d0677d207e59946e284e62b0ebb1ae8d4c8c7c
MD5 bbbd15f7ce081c7659fbfc8d74c328e0
BLAKE2b-256 0b4b95479bb717b54e1b372fbb429a5f140b0bbac9e943e78a52a7b3b9d375e0

See more details on using hashes here.

File details

Details for the file sirtuin-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: sirtuin-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 15.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for sirtuin-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ec0dbd5649a75be0adb76303831663bf79569588d96fd66a217a867faac5fe99
MD5 9c4dc8078b4d4ba2adf2f73a0bb490c6
BLAKE2b-256 645228e8bdeb7a81152ef4470f0035fa0fd190ee692ddc265fcfc1ac47751f8e

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