Skip to main content

Jentic Apitools Storage - Plugin architecture for storing OpenAPI artifacts in different backends

Project description

Jentic API Tools - Storage

Pluggable storage backends for persisting OpenAPI pipeline artifacts to filesystem, S3, GitHub repositories, or SQL databases.

Key Features

The storage package provides a StorageBackend abstract base class implemented by four backends: FilesystemStorage (default), S3Storage, GitHubStorage, and DatabaseStorage. A StorageContext context manager handles the lifecycle of temporary working directories during pipeline processing and persists results to the configured backend on exit. Helper functions create storage contexts from request metadata or environment variables, with fallback support. S3, GitHub, and database backends are imported on demand to avoid requiring their dependencies when unused.

Dependencies

Internal: jentic.apitools.common. External: sqlalchemy, PyGithub. Optional: boto3 (for S3).

Installation

pip install jentic-apitools-storage

Quick Start

from jentic.apitools.storage import StorageConfig, StorageType, StorageContext

config = StorageConfig(storage_type=StorageType.FILESYSTEM, base_path="./artifacts")
with StorageContext(config) as ctx:
    # Pipeline writes to ctx.working_dir
    pass

Testing

pytest tests -v

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

jentic_apitools_storage-1.0.0a11.tar.gz (17.2 kB view details)

Uploaded Source

Built Distribution

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

jentic_apitools_storage-1.0.0a11-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

Details for the file jentic_apitools_storage-1.0.0a11.tar.gz.

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a11.tar.gz
Algorithm Hash digest
SHA256 4c6e76c81a5817da0264495f8a1ec5f19470888632618b9bf406338116acf4ec
MD5 75d5c6d118e7f9d57f4c7fd979c48643
BLAKE2b-256 8c94684ba810304b4cad24ddb0522631e15be82f7fa3df0d75494b878a2d34e8

See more details on using hashes here.

File details

Details for the file jentic_apitools_storage-1.0.0a11-py3-none-any.whl.

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a11-py3-none-any.whl
Algorithm Hash digest
SHA256 df46ebdda9f8b62814f53275700e3f2af319f12fa740ec54a8fd4f260ff3f2e4
MD5 a3a985b1a01d9a2d596ae6b3a942db96
BLAKE2b-256 f05ee8cbbb612dfdb94dd41aa996be619018a52f42880c0ea7bb39adf7e3213d

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