{ "info": { "author": "Olivier Dalle", "author_email": "olivier@safer-storage.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: European Union Public Licence 1.2 (EUPL 1.2)", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3" ], "description": "# SAFER STORAGE NAS Historical management\n\nThis project implements a system level API to query and manage the SAFER-STORAGE backup and storage in space and time dimensions (hence the historical dimension). Each command of this API is designed to be either invoked directly from the shell or wrapped into an higher level API, eg. a web-ui back-end.\n\nThe SAFER-STORAGE backup system is extensively based on [ZoL](https://zfsonlinux.org/) snapshots as found in particulat in the [Proxmox VE](https://pve.proxmox.com/wiki/Main_Page) distribution. Notice that some features may be unavailable depending on which ZoL version is available on the execution platform.\n\n## Install\n\nThis project uses [python v3.7.4](https://docs.python.org/3.7/). We recommend installing python using [pyenv](https://github.com/pyenv/pyenv#installation) eg. with the [pyenv installer](https://github.com/pyenv/pyenv-installer), as a regular (non-root) user:\n\n```bash\n$ curl https://pyenv.run | bash\n$ pyenv install 3.7.4\n$ pyenv local 3.7.4\n```\nNote that if python is already installed or you are already pyenv but an older version, version 3.7.4 may not be available. Simply erase your previous pyenv installation an reinstall from scratch (or use vagrant, for a clean fresh start).\n\nThis package is then available through PyPI using the following command:\n```bash\n$ pip install --upgrade safer_hist_pkg\n```\n\n## Usage\n\n### `safer` : main command\n\nThe commands of this package are part of a module named safer_hist. For convenience, we also recommend defining the following funtion in your shell (eg. in your `.bashrc`):\n```bash\nfunction safer() \n{\n case $1 in\n help|lssnaps|genmeta|lsuntil|lsalltime|restore)\n subcmd=$1\n shift\n python -m safer_hist ${subcmd} \"$@\"\n ;;\n *)\n python -m safer_hist help \"$@\"\n ;;\n esac\n}\n```\n\n### `safer genmeta`: Snapshot meta-info generation \n\nGenerates a snapshot meta file for the snapshot `@` of the (ZFS) dataset ``. By default the output is written to a file named `.zfsmeta_` at the root of the dataset. If `-o` option is given, output is written to the specied filename or to stdout if `-` (minus) is given instead of a filename.\n\n```bash\n$ safer genmeta [-o file|-] dataset@snapshot\n```\n\n### `safer lssnaps`: Snapshot list\n\n### `safer lsuntil`: Merge target dir content from snapshots until\n\n### `safer lsalltime`: Marge target dir content from all snapshots\n\n### `safer restore`: Restore file from snapshot\n\n## Packaging and deploying to PyPI\n(reminder, see this [tuto](https://packaging.python.org/tutorials/packaging-projects/))\n\nInstall building dependencies as follows:\n```bash\n$ python3 -m pip install --upgrade setuptools wheel\n```\n\nBuild package as follows:\n```bash\n$ python3 setup.py sdist bdist_wheel\n```\n\nUpload to PyPI server:\n```bash\n$ python3 -m twine upload dist/*\n```\n\n## License\n[Licensed under the EUPL](https://choosealicense.com/licenses/eupl-1.2/)\n\n## Author(s)\n\n* DALLE, Olivier (First.LAST@safer-storage.com)\n\n\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://gitlab.safer-storage.com/safer-dev-priv/nas-histo", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "safer-hist", "package_url": "https://pypi.org/project/safer-hist/", "platform": "", "project_url": "https://pypi.org/project/safer-hist/", "project_urls": { "Homepage": "https://gitlab.safer-storage.com/safer-dev-priv/nas-histo" }, "release_url": "https://pypi.org/project/safer-hist/0.0.2/", "requires_dist": null, "requires_python": ">=3.7", "summary": "A system level API to query and manage the SAFER-STORAGE backup and storage in space in time dimensions", "version": "0.0.2" }, "last_serial": 5778043, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "27219fa033c7f83ca425f7037f68b9bc", "sha256": "339e9b00d9599f589dbc0717ac6b0e7d33a1f41873b086266dd467357c915800" }, "downloads": -1, "filename": "safer_hist-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "27219fa033c7f83ca425f7037f68b9bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 10268, "upload_time": "2019-09-03T21:30:31", "url": "https://files.pythonhosted.org/packages/c2/4b/3a2a138a667ad4b6bcb40431d4e47608e9e509472c6db6e0df6bb76f39ab/safer_hist-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "233db8e3bd65e55864e1c09d41f77a50", "sha256": "96d00fde0e184d1ba21aae7e37123ef136c80857a748e77e6edf27ef9d078669" }, "downloads": -1, "filename": "safer-hist-0.0.2.tar.gz", "has_sig": false, "md5_digest": "233db8e3bd65e55864e1c09d41f77a50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 3423, "upload_time": "2019-09-03T21:30:34", "url": "https://files.pythonhosted.org/packages/96/9f/09ccf1cad400da038c94d7d6e3375a4f428d7625a7beb8537ce70a4ebbe5/safer-hist-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "27219fa033c7f83ca425f7037f68b9bc", "sha256": "339e9b00d9599f589dbc0717ac6b0e7d33a1f41873b086266dd467357c915800" }, "downloads": -1, "filename": "safer_hist-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "27219fa033c7f83ca425f7037f68b9bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.7", "size": 10268, "upload_time": "2019-09-03T21:30:31", "url": "https://files.pythonhosted.org/packages/c2/4b/3a2a138a667ad4b6bcb40431d4e47608e9e509472c6db6e0df6bb76f39ab/safer_hist-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "233db8e3bd65e55864e1c09d41f77a50", "sha256": "96d00fde0e184d1ba21aae7e37123ef136c80857a748e77e6edf27ef9d078669" }, "downloads": -1, "filename": "safer-hist-0.0.2.tar.gz", "has_sig": false, "md5_digest": "233db8e3bd65e55864e1c09d41f77a50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.7", "size": 3423, "upload_time": "2019-09-03T21:30:34", "url": "https://files.pythonhosted.org/packages/96/9f/09ccf1cad400da038c94d7d6e3375a4f428d7625a7beb8537ce70a4ebbe5/safer-hist-0.0.2.tar.gz" } ] }