Skip to main content

Vault for storing locally encrypted data in S3 using KMS keys

Project description

nitor-vault

Python vault implementation.

See the root readme for more information.

Dependencies

Python dependencies are specified in pyproject.toml. The requirements.txt file is generated by pip compile and should not be modified manually.

Use the provided shell script to update the requirements file. First install uv (recommended), or alternatively pip-tools using pipx. Then run:

./compile-requirements.sh
# See help
./compile-requirements.sh -h

Development

uv is the recommended way to handle virtual environments for development.

Create a venv and install all dependencies:

uv sync --all-extras

You can then run commands directly with the venv using uv run, or activate the venv manually first. The uv default venv location is .venv.

source .venv/bin/activate
# or Windows
.venv\Scripts\activate

The vault CLI can be run without installing using:

uv run python n_vault/cli.py
# or with venv activated
python3 n_vault/cli.py

Or install inside venv with:

# With uv
uv pip install .
# Normal venv
python -m pip install .

After installing, you will have vault available in path.

Release

Use the provided shell script. Note that you need to have a venv with the extra dependencies installed active when running the script.

./release.sh
# See help
./release.sh -h

Code formatting and linting

Code formatting and linting with ruff.

These are configured with a custom line length limit of 120. The configs can be found in pyproject.toml.

Usage:

ruff format
ruff check --fix

These can also be integrated to IDEs / editors or run as a pre-commit hook. See the documentation for the Ruff extension for VS Code.

Using with pre-commit (run from repo root):

# setup to be run automatically on git commit
pre-commit install

# run manually
pre-commit run --all-files

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

nitor_vault-0.56.tar.gz (15.5 kB view hashes)

Uploaded Source

Built Distribution

nitor_vault-0.56-py3-none-any.whl (15.3 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