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.0a14.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.0a14-py3-none-any.whl (25.0 kB view details)

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a14.tar.gz
Algorithm Hash digest
SHA256 ed1cf4b3b41947acf6c731316d08d394ecad15b746c82866b71e5ce63f9536f0
MD5 9bfc3edc9bcf3395ca22025b0820919c
BLAKE2b-256 f1b4bf8a5e055b9b74664c3e70b9ab2b922802a794bbc9a1ec78582b5a509a58

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a14-py3-none-any.whl
Algorithm Hash digest
SHA256 55f29316746db47d5536cd709bae7d34f5d09421faff6d2377d9f88b31e0ef3c
MD5 0263cc8c921ddb050df98259aebb7848
BLAKE2b-256 dd388e0a02231c3afcf51394877c920c4ed6ed4fd2f9224f2bee02f1b225ef8c

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