# vault-client
Клиент предназанчен для унифицированного доступа к переменным окружения размещённым в конфигурационном файле (или переменных окружения) или в хранилище Vault, в зависимости от параметров инициализации.
## Установка клиента
> pip install vault-client
## Интерфейс клиента
### Инициализация клиента:
> client = VaultClient(environ=”LOCAL”)
При таком способе инициализации источником данных является файл *.deploy/.envs/local.env*.
При отсутствии параметра *environ* > client = VaultClient()
или *environ=None*
> client = VaultClient(environ=None)
Данные получаются из Vault, параметры сервера Vault должны быть заданы в переменных окружения.
Для получения параметров из хранилища Vault в переменных окружения задаются следующие данные; - адрес хоста и порт Vault (host, port); - токен доступа к Vault (token); - точка монтирования (mount_point); - стадия разработки (PROD, STAGE, DEV и т.д.) (environ)
Перечисленные параметры должны быть установлены в переменных окружения:
VAULT_TOKEN
VAULT_PORT
VAULT_HOST
VAULT_MOUNT_POINT
VAULT_ENV
Внимание: при записи параметров в Vault, наименование параметра должно указываться строчными символами.
### Пример структуры данных в файле local.env или в Vault
STORAGE_HOST=127.0.0.1 STORAGE_PORT=50001 PARSER_HOST=127.0.0.2 PARSER_PORT=50002
Данные определяется таким образом:
<Сервис>_<Параметр> - при размещении данных в файле local.env;
<Сервис>/STAGE/<Параметр> - при размещении данных в Vault;
#### Пример получения параметра
>client = VaultClient(environ=”LOCAL”) > >result = client.get(“storage”, “host”)
При иницализации клиента с параметром *environ = LOCAL*, значение параметра будет получаться из переменной окружения STORAGE_HOST, в случае отсутствия - *result = None*.
Иницализация клиента с параметром *VAULT_ENV* отличном от *LOCAL* (например: *PROD*), значение параметра будет запрашиваться из Vault по пути: *test_client/STORAGE/PROD/host* (при VAULT_MOUNT_POINT = test_client), в случае отсутствия - *result = None*.
## Unit test
Unit тесты и интеграционные тесты не разделяются. Вы можете найти их в /tests. Для проведения интеграционных тестов, требуется развёрнутый vault.
## Поддержка
Создано при поддержке fless.pro
Metadata
Release files for vault-client 0.3.4
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| vault_client-0.3.4-py3-none-any.whl | Python 3 | none | any | Details for vault_client-0.3.4-py3-none-any.whl |
Release files / vault_client-0.3.4-py3-none-any.whl
| Download URL | vault_client-0.3.4-py3-none-any.whl |
|---|---|
| Size | 5.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b8cad2305917b4800ba6ee0876e80db2534580cdcfc77934746fb9142eb0558d
|
|
BLAKE2b-256 checksum How to use checksums |
0617f54fa6401d45c3d70f23ac76444cddfdd8b106bf3d3a5bbfc35a3d357ab2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
Python-urllib/3.7
|
Security for vault-client 0.3.4
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.