Skip to main content

Store and encrypt sensitive data in your git repo

Project description

Data Vault 🔒

PyPI version Test

Store and encrypt sensitive data in your git repo.

Installation

Pick your poison:

  • pip install dihi-datavault then datavault
  • poetry add dihi-datavault then poetry run datavault
  • pipx install dihi-datavault then pipx run datavault

Usage

First, create a new vault.

datavault new path/to/vault

This command will...

  • Provide you with a secret to use when encrypting your files
  • Create a folder at path/to/vault where you place files you wish to be encrypted
  • Create a path/to/vault/.encrypted directory to store the encrypted files along with a manifest which tracks the state of files in the vault
  • Create a path/to/vault/.gitignore file which will ignore the unencrypted files

You're now free to add files to your new vault and encrypt them:

echo "apple" > path/to/vault/apple.txt
echo "banana" > path/to/vault/banana.txt
datavault inspect
datavault encrypt

You can also clear out the contents of the vault as needed...

datavault clear-decrypted
datavault clear-encrypted

Now lets say you've just pulled the repo and have none of the original files...

datavault decrypt

Development

Useful commands:

  • poetry run pytest to run the tests
  • poetry publish -r testpypi and poetry publish -r testpypi to test the deployment
  • poetry version X.Y.Z to bump the version, then git tag vX.Y.Z and git push --tags
  • poetry publish to release

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dihi-datavault-0.1.0.tar.gz (8.7 kB view hashes)

Uploaded Source

Built Distribution

dihi_datavault-0.1.0-py3-none-any.whl (8.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page