{ "info": { "author": "Jose A. Salgado", "author_email": "jose.salgado.wrk@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "BlackHoles\n---\n\nBlack Holes is a simple way to handle your projects secrets using a `database` or `Consul.io`.\n\n**IMPORTANT**: `Work-in-Progress. Beta version. Non production software.`\n\n+ [Installing BlackHoles](#install)\n+ [Using BlackHoles](#usage)\n - [Sqlite BlackHole](#sqliteblackhole)\n * [Plain Keys](#simple-usage-db-black-hole)\n * [Encrypted Keys](#advanced-usage-db-black-hole)\n - [Consul BlackHole](#consulblackhole)\n * [Plain Keys](#simple-usage-consul-black-hole)\n\n# Install\n\nInstalling from `Pip`\n\n```bash\n(pyenv) $ pip install blackhole\n```\n\n\nInstalling from `sources`:\n\n```bash\n(pyenv) $ cd black_holes\n(pyenv) $ python setup.py install\n```\n\n# Usage:\n\n## `SqliteBlackHole` \n\n__Database BlackHole based__ \n\n### simple usage db-black-hole\n\nPlain `{'key': 'values'}` storage.\n\n```python\nfrom black_holes import SqliteBlackHole\n\n# Create a new SqliteBlackHole instance\nnear_black_hole = SqliteBlackHole()\n\n# Create a key called \"key\" with value \"value\"\nnear_black_hole['key'] = 'value'\n\n# print key\nprint(near_black_hole['key'])\n# >>> value\n``` \n\n### Advanced usage db-black-hole:\n\nEncrypted `{'key': 'values'}` storage.\n\n```python\nfrom black_holes import SqliteBlackHole\n\n# Create a new SqliteBlackHole instance\n# By default AES password is `qwerty12345678`\nnear_black_hole = SqliteBlackHole()\n\n# Create a new custom password_callback function\nmy_pass = lambda instance: 'my-very-poor-password'\nnear_black_hole = SqliteBlackHole(password_callback=my_pass)\n\n# Create a AES Encrypted key\nnear_black_hole['encrypted_key'] = 'it is a secret'\n\n# Encrypted value\nprint(near_black_hole['key'])\n# >>> Encrypted Value\n\n# Decrypted value\nprint(near_black_hole['decrypted_key'])\n# >>> Decrypted Value\n```\n\n## `ConsulBlackHole` \n\n__Consul.io BlackHole based__ \n\n### Simple usage consul-black-hole\n\nPlain `{'key': 'values'}` storage.\n\n```python\nfrom black_holes import ConsulBlackHole\n\n# Create a new DEV ConsulBlackHole instance\nremote_black_hole = ConsulBlackHole()\n\n# You can also creates a new ConsulBlackHole instance using consul auth token\n# remote_black_hole = ConsulBlackHole(token='{consul-io-token}')\n\n# Create a key called \"key\" with value \"value\"\nremote_black_hole['key']= 'value'\n\n# print key\nprint(remote_black_hole['key'])\n# >>> value\n```\n\n\n_Made it with \u2764 by __DTecDeal___\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.com/JoseSalgado1024/black-holes", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "black-holes", "package_url": "https://pypi.org/project/black-holes/", "platform": "", "project_url": "https://pypi.org/project/black-holes/", "project_urls": { "Homepage": "https://gitlab.com/JoseSalgado1024/black-holes" }, "release_url": "https://pypi.org/project/black-holes/0.0.32/", "requires_dist": [ "Crypto", "python-consul (==1.1.0)", "peewee (==3.9.2)", "pycryptodome (==3.7.3)" ], "requires_python": "", "summary": "Easy way to handle platform secrets.", "version": "0.0.32" }, "last_serial": 5220181, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "bc8c3384ac94188f36ebd4fce966d4a2", "sha256": "9c0796f394981016fd3b835c7039a477b44e38552d09540d2e63abddf2f0bdc6" }, "downloads": -1, "filename": "black_holes-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "bc8c3384ac94188f36ebd4fce966d4a2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5084, "upload_time": "2019-05-01T21:59:04", "url": "https://files.pythonhosted.org/packages/ad/08/e33be9dd600d997a780fd9a2961b2deb11c51910bed498598d78ffa7a38c/black_holes-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cb5b2a1cf9298d07e560ccaba22f5b8c", "sha256": "9c0456f7f8b7ac04321a1e164327a6268a74e195ef0c47130537f7732ccf7310" }, "downloads": -1, "filename": "black_holes-0.0.1.tar.gz", "has_sig": false, "md5_digest": "cb5b2a1cf9298d07e560ccaba22f5b8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4309, "upload_time": "2019-05-01T21:59:06", "url": "https://files.pythonhosted.org/packages/93/75/88d285972c0ddd89d1fa5c104ec3bef396691c71c78c905f6af6666e1f63/black_holes-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "b6a7fef36140ee3e3b30fc88328d70d6", "sha256": "a335137c6aa83e622fa0f8a33b2895239edc3f27c2b47b4527cdc039cd550999" }, "downloads": -1, "filename": "black_holes-0.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "b6a7fef36140ee3e3b30fc88328d70d6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8402, "upload_time": "2019-05-02T18:18:01", "url": "https://files.pythonhosted.org/packages/b7/48/ecf1adc4b791af955415e94580b1eaf578e2374341afdba8782c17e8ec2d/black_holes-0.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f736e4e7c40182611d83b753d372cfa0", "sha256": "1133682079d7b5829f6967f17661b005a61ca08883dbf33853dd071297e751f6" }, "downloads": -1, "filename": "black_holes-0.0.2.tar.gz", "has_sig": false, "md5_digest": "f736e4e7c40182611d83b753d372cfa0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4318, "upload_time": "2019-05-02T18:18:03", "url": "https://files.pythonhosted.org/packages/e8/22/4cb7282a54ba6014b5c565bcb1015548227055a48d603cf6bfb2745065c7/black_holes-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "28a8f4002360108d1fc0c7a1df098c74", "sha256": "25c2474864db633e26419cb93d4d06ee05873e0c1cb6ca14449200c827c34d0f" }, "downloads": -1, "filename": "black_holes-0.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "28a8f4002360108d1fc0c7a1df098c74", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4833, "upload_time": "2019-05-03T02:26:23", "url": "https://files.pythonhosted.org/packages/28/53/16bd0dd3cb659c41917ec01639e733a27ac33f5ebcc01010657a9cb4af43/black_holes-0.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2822b90410ca92669ae72f9ac03daae0", "sha256": "18f9fbcbeeba4b95c49804c124dd6337298e208da2a43d97f86364173252fe5b" }, "downloads": -1, "filename": "black_holes-0.0.3.tar.gz", "has_sig": false, "md5_digest": "2822b90410ca92669ae72f9ac03daae0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4102, "upload_time": "2019-05-03T02:26:24", "url": "https://files.pythonhosted.org/packages/fe/3c/b031077222bb261a4ee1bb824cf9eb4b5e2cb1df545189db9b01e24ac23c/black_holes-0.0.3.tar.gz" } ], "0.0.31": [ { "comment_text": "", "digests": { "md5": "972367b254d996dd1b847b4fe403e2c9", "sha256": "490c5c02cf93195a7d0aa4d5fa329855f3c0bc49e8b732450499e662de6b2527" }, "downloads": -1, "filename": "black_holes-0.0.31-py3-none-any.whl", "has_sig": false, "md5_digest": "972367b254d996dd1b847b4fe403e2c9", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 4989, "upload_time": "2019-05-03T02:42:37", "url": "https://files.pythonhosted.org/packages/65/fa/b95a1f7a4f15794bf1056c08b486257ff2eed57cf798da90c06be9525d5e/black_holes-0.0.31-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4a903a874dd8fc8b4609b63ed53fd7fa", "sha256": "cdf561acedf8ac263f1286c3d87dc1114e786f6c9b950c4c1789fcaea9f04351" }, "downloads": -1, "filename": "black_holes-0.0.31.tar.gz", "has_sig": false, "md5_digest": "4a903a874dd8fc8b4609b63ed53fd7fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4272, "upload_time": "2019-05-03T02:42:39", "url": "https://files.pythonhosted.org/packages/c1/46/7eaf57545617b9f4eda1f99d7e2c1e1d824b800e4ce470d093146432cb66/black_holes-0.0.31.tar.gz" } ], "0.0.32": [ { "comment_text": "", "digests": { "md5": "0e560db7de88b8bae9f9d125920306b1", "sha256": "ea34cce35c08819a308cb034b67aadfcf48771b7325bcf70860940d3481f0523" }, "downloads": -1, "filename": "black_holes-0.0.32-py3-none-any.whl", "has_sig": false, "md5_digest": "0e560db7de88b8bae9f9d125920306b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5047, "upload_time": "2019-05-03T03:38:50", "url": "https://files.pythonhosted.org/packages/50/77/18c042e47f13c2daba6dfb81ddf664e148055774249ce8e8fa58e1efc313/black_holes-0.0.32-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ccac0ed5b1206660782d383f5d5a34b", "sha256": "b79bd7fd3226d8a386b389da4648c2ff6b80d47b63926b86f5dd937941c797f2" }, "downloads": -1, "filename": "black_holes-0.0.32.tar.gz", "has_sig": false, "md5_digest": "9ccac0ed5b1206660782d383f5d5a34b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4405, "upload_time": "2019-05-03T03:38:51", "url": "https://files.pythonhosted.org/packages/6e/1c/8feddd0c24c9816471e9c3fcfbafaee3cdb6a5a75db060e307d4af533019/black_holes-0.0.32.tar.gz" } ], "0.0.3b0": [ { "comment_text": "", "digests": { "md5": "cda44bbc2653601fb367d93d4ed72328", "sha256": "04c345aceeb16d9812aa7624cdf938c55c2602857ddda1b669bbb53197f06b0c" }, "downloads": -1, "filename": "black_holes-0.0.3b0-py3-none-any.whl", "has_sig": false, "md5_digest": "cda44bbc2653601fb367d93d4ed72328", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 8206, "upload_time": "2019-05-03T02:22:43", "url": "https://files.pythonhosted.org/packages/3e/62/0c90b0de2407cd80edcf62b6bc64d79c2239245b17f070b86282f42044f4/black_holes-0.0.3b0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "28953d01d942e904e703fd3d61e28d66", "sha256": "46d14bfa67b8a1524943fe92b47c1e04316586e985e27189890829910bf3f29b" }, "downloads": -1, "filename": "black_holes-0.0.3b0.tar.gz", "has_sig": false, "md5_digest": "28953d01d942e904e703fd3d61e28d66", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4107, "upload_time": "2019-05-03T02:22:45", "url": "https://files.pythonhosted.org/packages/73/af/353fa4e2a31da2fc4adaa2c5d279219cc7d6c5a230ab215d89b18ac9d16d/black_holes-0.0.3b0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0e560db7de88b8bae9f9d125920306b1", "sha256": "ea34cce35c08819a308cb034b67aadfcf48771b7325bcf70860940d3481f0523" }, "downloads": -1, "filename": "black_holes-0.0.32-py3-none-any.whl", "has_sig": false, "md5_digest": "0e560db7de88b8bae9f9d125920306b1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 5047, "upload_time": "2019-05-03T03:38:50", "url": "https://files.pythonhosted.org/packages/50/77/18c042e47f13c2daba6dfb81ddf664e148055774249ce8e8fa58e1efc313/black_holes-0.0.32-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ccac0ed5b1206660782d383f5d5a34b", "sha256": "b79bd7fd3226d8a386b389da4648c2ff6b80d47b63926b86f5dd937941c797f2" }, "downloads": -1, "filename": "black_holes-0.0.32.tar.gz", "has_sig": false, "md5_digest": "9ccac0ed5b1206660782d383f5d5a34b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4405, "upload_time": "2019-05-03T03:38:51", "url": "https://files.pythonhosted.org/packages/6e/1c/8feddd0c24c9816471e9c3fcfbafaee3cdb6a5a75db060e307d4af533019/black_holes-0.0.32.tar.gz" } ] }