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

Uploaded Python 3

File details

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

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a3.tar.gz
Algorithm Hash digest
SHA256 b4745528e45c733d4794ebcf1f39ed72a1a2d88f3ca141a39836104c479caf12
MD5 f81425f52a66a948d6a69f5c7daa08fa
BLAKE2b-256 02fd563bf5d43657458c4e9847a94db62455d8d2a40488cbf1913d40154e9a6a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for jentic_apitools_storage-1.0.0a3-py3-none-any.whl
Algorithm Hash digest
SHA256 842690842bde10e050b7f0f0e50e9278af4fbd3f6bcd3e7f1b5267f0dbbe1a94
MD5 a18934e55ad447fa75187c2d2f29fca7
BLAKE2b-256 449f480351991de046c60cab10a2014a273c1a1ecd52a217da05bc4d71b9ecc9

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