Skip to main content

keyring backend plugin to retrieve credentials from environment variables.

Project description

PyPI Status Python Version License

CI Codecov

pre-commit Black

keyrings.envvars is a keyring backend plugin for the keyring utility that provides credentials via environment variables.

Requirements

  • keyring >= 23.4.0

  • Python >= 3.9

Installation

You can install keyrings.envvars via pip from PyPI:

$ pip install keyrings.envvars

Usage

keyrings.envvars uses the following format for environment variables:

KEYRING_SERVICE_NAME_<n>=<service>
KEYRING_SERVICE_USERNAME_<n>=<username>
KEYRING_SERVICE_PASSWORD_<n>=<password>

Example for usage with pip credentials:

KEYRING_SERVICE_NAME_0=https://private-pypi-index.example.com
KEYRING_SERVICE_USERNAME_0=testusername
KEYRING_SERVICE_PASSWORD_0=testpassword
KEYRING_SERVICE_NAME_1=https://another-private-pypi-index.example.com
KEYRING_SERVICE_USERNAME_1=testusername
KEYRING_SERVICE_PASSWORD_1=testpassword

Note: Defining multiple identical credentials (service name and username) will result in the last defined password being returned as the environment variables are sorted by the keyring backend.

export KEYRING_SERVICE_NAME_0=https://private-pypi-index.example.com
export KEYRING_SERVICE_USERNAME_0=testusername
export KEYRING_SERVICE_PASSWORD_0=testpassword
export KEYRING_SERVICE_NAME_1=https://private-pypi-index.example.com
export KEYRING_SERVICE_USERNAME_1=testusername
export KEYRING_SERVICE_PASSWORD_1=testpassword_1
keyring get https://private-pypi-index.example.com testusername
testpassword_1

Contributing

Contributions including suggestions, pull requests, etc. are very welcome. keyrings.envvars uses Conventional Commits format for commit messages.

License

Distributed under the terms of the MIT license, keyrings.envvars is free and open source software.

Issues

If you encounter any problems, please file an issue along with a detailed description.

Please read https://www.chiark.greenend.org.uk/~sgtatham/bugs.html before you file an issue.

Credits

This project was generated from @cjolowicz’s Hypermodern Python Cookiecutter template.

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

keyrings_envvars-1.0.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

keyrings_envvars-1.0.0-py3-none-any.whl (7.1 kB view details)

Uploaded Python 3

File details

Details for the file keyrings_envvars-1.0.0.tar.gz.

File metadata

  • Download URL: keyrings_envvars-1.0.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.4

File hashes

Hashes for keyrings_envvars-1.0.0.tar.gz
Algorithm Hash digest
SHA256 2ffb3f8facd2a1a4f5a5421d3a6371e49d5b6a088103d3fc849c0169f8031c61
MD5 5c09baac7d4aa049c9a4f8b47ecccffa
BLAKE2b-256 fec0d65c02350ba47ea584c999c008b312df1d926070df19884ebd1b254be9ab

See more details on using hashes here.

File details

Details for the file keyrings_envvars-1.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for keyrings_envvars-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6c28fb008b1d7ef6c96eb18e65703d3a6a8010b875954de36e48bcab8b1532c7
MD5 33d5fb35748824eb8b339a865fc4c378
BLAKE2b-256 42ffb3873055b1d3e9369d65e8515e88f2a07555fdffa4570817cf9825842fc9

See more details on using hashes here.

Supported by

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