mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-18 10:21:01 +03:00
85ce3f4fd1
This commit introduces several changes: * Update LICENSE and project information * Give a good PEP8 talk to existing Python source code * Add RPM/DEB packaging for pyzfs * Fix some outstanding issues with the existing pyzfs code caused by changes in the ABI since the last time the code was updated * Integrate pyzfs Python unittest with the ZFS Test Suite * Add missing libzfs_core functions: lzc_change_key, lzc_channel_program, lzc_channel_program_nosync, lzc_load_key, lzc_receive_one, lzc_receive_resumable, lzc_receive_with_cmdprops, lzc_receive_with_header, lzc_reopen, lzc_send_resume, lzc_sync, lzc_unload_key, lzc_remap Note: this commit slightly changes zfs_ioc_unload_key() ABI. This allow to differentiate the case where we tried to unload a key on a non-existing dataset (ENOENT) from the situation where a dataset has no key loaded: this is consistent with the "change" case where trying to zfs_ioc_change_key() from a dataset with no key results in EACCES. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: loli10K <ezomori.nozomu@gmail.com> Closes #7230
29 lines
1.4 KiB
Plaintext
29 lines
1.4 KiB
Plaintext
This package provides a wrapper for libzfs_core C library.
|
|
|
|
libzfs_core is intended to be a stable interface for programmatic
|
|
administration of ZFS.
|
|
This wrapper provides one-to-one wrappers for libzfs_core API functions,
|
|
but the signatures and types are more natural to Python.
|
|
nvlists are wrapped as dictionaries or lists depending on their usage.
|
|
Some parameters have default values depending on typical use for
|
|
increased convenience.
|
|
Enumerations and bit flags become strings and lists of strings in Python.
|
|
Errors are reported as exceptions rather than integer errno-style
|
|
error codes. The wrapper takes care to provide one-to-many mapping
|
|
of the error codes to the exceptions by interpreting a context
|
|
in which the error code is produced.
|
|
|
|
Unit tests and automated test for the libzfs_core API are provided
|
|
with this package.
|
|
Please note that the API tests perform lots of ZFS dataset level
|
|
operations and ZFS tries hard to ensure that any modifications
|
|
do reach stable storage. That means that the operations are done
|
|
synchronously and that, for example, disk caches are flushed.
|
|
Thus, the tests can be very slow on real hardware.
|
|
It is recommended to place the default temporary directory or
|
|
a temporary directory specified by, for instance, TMP environment
|
|
variable on a memory backed filesystem.
|
|
|
|
Package documentation: http://pyzfs.readthedocs.org
|
|
Package development: https://github.com/zfsonlinux/zfs
|