Skip to main content

In-memory ONTAP-shaped reference backend for nessie-store — PyO3 bindings.

Project description

nessie-backend-mem

The in-memory reference backend for nessie-store — a HashMap-backed implementation of the full VolumeBackend ⊂ SnapshotBackend ⊂ CloneBackend stack. It passes the full conformance suite and needs no privileges or external services, so it's the zero-dependency way to script against an ONTAP-shaped backend.

Install

pip install nessie-backend-mem      # Python
cargo add nessie-backend-mem        # Rust

Usage (Python)

from nessie_backend_mem import MemBackend

b = MemBackend()
vol = b.create_volume("build-cache", size_bytes=50 * 2**30)
snap = b.create_snapshot(vol["uuid"], "pre-build")
clone = b.create_clone(vol["uuid"], snap["uuid"], "build-cache-pr1234")
assert clone["clone"]["parent_volume"] == "build-cache"

Methods return plain dicts in the substrate-neutral domain shape (size_bytes, vol_type, clone={parent_volume, parent_snapshot}) and raise NessieError on failure. The ONTAP wire shape (size, type, clone.is_flexclone, HAL _links) is produced by nessie-ontap-protocol.

Usage (Rust)

use nessie_backend_core::{VolumeBackend, VolumeSpec};
use nessie_backend_mem::MemBackend;

let b = MemBackend::new();
let vol = b.create_volume(VolumeSpec::named("build-cache")).unwrap();

Dual-licensed MIT OR Apache-2.0.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

nessie_backend_mem-0.3.0-cp310-abi3-win_amd64.whl (177.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (309.2 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ x86-64

nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (305.2 kB view details)

Uploaded CPython 3.10+manylinux: glibc 2.17+ ARM64

nessie_backend_mem-0.3.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (546.0 kB view details)

Uploaded CPython 3.10+macOS 10.12+ universal2 (ARM64, x86-64)macOS 10.12+ x86-64macOS 11.0+ ARM64

File details

Details for the file nessie_backend_mem-0.3.0-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.0-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1f02c0120f36a8192f48a0642528eeaa5b6bd43d2f96c15979af99f77a196f8c
MD5 8d1df3d530207e3ffc008604ff823ab1
BLAKE2b-256 fd39244e993978fdf9817de97febcdd6f80ce11545ae0324b9c394ad73dbbd51

See more details on using hashes here.

File details

Details for the file nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 aca4ff0769e34e235f4f73bf4117213951e06b2b8bde52d963876874e92b4272
MD5 bdecfdab2b4df694dc853c11d9aac0ed
BLAKE2b-256 cd7a340452c5a6c34947be620826046c97cb4cb3b32d42d59f5df8d34bcd3edc

See more details on using hashes here.

File details

Details for the file nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.0-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 44241760c6c0fef111f53af781566f21704606bed9c9a7bc4aa64310b79c4dcd
MD5 c5dc34fd3a80614d1f58639ef7240609
BLAKE2b-256 224bce953f236c02e1cc56c440966e65ecfee00ef2377254a12e4c486afb571a

See more details on using hashes here.

File details

Details for the file nessie_backend_mem-0.3.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl.

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.0-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 25cef952bf7006affa28896215eb78921f6076b9b3c37843d6cfbe159917874f
MD5 d241a6b93e3c2645afa2364c51d90cfc
BLAKE2b-256 e092d5529afb5e592b59339d89e3c66cb9b00a748a790e318aab48f7fcca3d21

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