Easy way to handle platform secrets.
Project description
BlackHoles
Black Holes is a simple way to handle your projects secrets using a database
or Consul.io
.
IMPORTANT: Work-in-Progress. Beta version. Non production software.
Install
Installing from Pip
(pyenv) $ pip install blackhole
Installing from sources
:
(pyenv) $ cd black_holes
(pyenv) $ python setup.py install
Usage:
SqliteBlackHole
Database BlackHole based
simple usage db-black-hole
Plain {'key': 'values'}
storage.
from black_holes import SqliteBlackHole
# Create a new SqliteBlackHole instance
near_black_hole = SqliteBlackHole()
# Create a key called "key" with value "value"
near_black_hole['key'] = 'value'
# print key
print(near_black_hole['key'])
# >>> value
Advanced usage db-black-hole:
Encrypted {'key': 'values'}
storage.
from black_holes import SqliteBlackHole
# Create a new SqliteBlackHole instance
# By default AES password is `qwerty12345678`
near_black_hole = SqliteBlackHole()
# Create a new custom password_callback function
my_pass = lambda instance: 'my-very-poor-password'
near_black_hole = SqliteBlackHole(password_callback=my_pass)
# Create a AES Encrypted key
near_black_hole['encrypted_key'] = 'it is a secret'
# Encrypted value
print(near_black_hole['key'])
# >>> Encrypted Value
# Decrypted value
print(near_black_hole['decrypted_key'])
# >>> Decrypted Value
ConsulBlackHole
Consul.io BlackHole based
Simple usage consul-black-hole
Plain {'key': 'values'}
storage.
from black_holes import ConsulBlackHole
# Create a new DEV ConsulBlackHole instance
remote_black_hole = ConsulBlackHole()
# You can also creates a new ConsulBlackHole instance using consul auth token
# remote_black_hole = ConsulBlackHole(token='{consul-io-token}')
# Create a key called "key" with value "value"
remote_black_hole['key']= 'value'
# print key
print(remote_black_hole['key'])
# >>> value
Made it with ❤ by DTecDeal
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
black_holes-0.0.32.tar.gz
(4.4 kB
view details)
Built Distribution
File details
Details for the file black_holes-0.0.32.tar.gz
.
File metadata
- Download URL: black_holes-0.0.32.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b79bd7fd3226d8a386b389da4648c2ff6b80d47b63926b86f5dd937941c797f2 |
|
MD5 | 9ccac0ed5b1206660782d383f5d5a34b |
|
BLAKE2b-256 | 6e1c8feddd0c24c9816471e9c3fcfbafaee3cdb6a5a75db060e307d4af533019 |
File details
Details for the file black_holes-0.0.32-py3-none-any.whl
.
File metadata
- Download URL: black_holes-0.0.32-py3-none-any.whl
- Upload date:
- Size: 5.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ea34cce35c08819a308cb034b67aadfcf48771b7325bcf70860940d3481f0523 |
|
MD5 | 0e560db7de88b8bae9f9d125920306b1 |
|
BLAKE2b-256 | 507718c042e47f13c2daba6dfb81ddf664e148055774249ce8e8fa58e1efc313 |