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.1-cp310-abi3-win_amd64.whl (177.3 kB view details)

Uploaded CPython 3.10+Windows x86-64

nessie_backend_mem-0.3.1-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.1-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.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl (546.1 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.1-cp310-abi3-win_amd64.whl.

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.1-cp310-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 a893aa1bca2c03096afbfe17076ed32e70784b36a6daabc00ccf761769ac14e7
MD5 8fdf3329ffd17cb55f709711e55e962a
BLAKE2b-256 de2672eb63b07855f518ffdc96423fcef3fb109e489a5ddfff79db129adcff90

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.1-cp310-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a15a9a9e5f6d9029efc73d9203c9cf6c0cca464c30cb408cfb8b19344d4abed8
MD5 3b1ddcab6f3e09d30b37ee9020b23303
BLAKE2b-256 81278edf176c9dbac0285efc58571b63256b93cd81d0de6c967f924e11da9a0a

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for nessie_backend_mem-0.3.1-cp310-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 041af0b62157acee99ea15afbcc81f44336b262097bbc2870b33289c07816768
MD5 47b7463c0e5195dd13348c009dcc9ffd
BLAKE2b-256 99395e2a409bcf925d52537b05f16a900ecf56b6141c58c72ad15659e66ecb6b

See more details on using hashes here.

File details

Details for the file nessie_backend_mem-0.3.1-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.1-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Algorithm Hash digest
SHA256 5a8c0e6ab8ce940fdf86b06397ad27b2c555c7aeafea3f1b55c3ad74587c8688
MD5 d2316b9a48b4c8981392903519a37e63
BLAKE2b-256 f7ace9ceb92bdd9b3d773b473841b4148187d6d5d9bfc94c5d752e0d77cf23cb

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