Metadata-Version: 2.1
Name: sitri
Version: 0.10.7
Summary: Library for one endpoint config managment
Home-page: https://github.com/Egnod/sitri
License: MIT
Keywords: packaging,poetry
Author: Alexander Lavrov
Author-email: egnod@ya.ru
Requires-Python: >=3.6,<4.0
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Requires-Dist: hvac (>=0.10.5,<0.11.0)
Requires-Dist: loguru (>=0.5.1,<0.6.0)
Requires-Dist: pydantic (>=1.7.3,<2.0.0)
Requires-Dist: pytest_cases (>=2.2.2,<3.0.0)
Requires-Dist: pyyaml (>=5.3.1,<6.0.0)
Requires-Dist: redis (>=3.5.3,<4.0.0)
Requires-Dist: vedis (>=0.7.1,<0.8.0)
Project-URL: Documentation, https://sitri.readthedocs.io
Project-URL: Repository, https://github.com/Egnod/sitri
Description-Content-Type: text/markdown


<p align="center">
  <a href="https://github.com/lemegetonx/sitri">
    <img src="docs/_static/logo.gif">
  </a>
  <h1 align="center">
    Sitri Configuration Library
  </h1>
</p>

[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2FLemegetonX%2Fsitri%2Fbadge&style=popout)](https://actions-badge.atrox.dev/LemegetonX/sitri/goto)
[![codecov](https://codecov.io/gh/LemegetonX/sitri/branch/master/graph/badge.svg)](https://codecov.io/gh/LemegetonX/sitri)
![PyPI](https://img.shields.io/pypi/v/sitri)
![Read the Docs](https://img.shields.io/readthedocs/sitri)
[![CodeFactor](https://www.codefactor.io/repository/github/lemegetonx/sitri/badge)](https://www.codefactor.io/repository/github/lemegetonx/sitri) [![Join the chat at https://gitter.im/lemegetonx/sitri](https://badges.gitter.im/lemegetonx/sitri.svg)](https://gitter.im/lemegetonx/sitri?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)

Sitri - library for managing authorization and configuration data from a single object with possibly different or identical providers

#  Installation

```bash
poetry add sitri
```

or
```bash
pip3 install sitri
```

# Basics with SystemProvider

```python
from sitri.providers.contrib import SystemConfigProvider
from sitri import Sitri

conf = Sitri(
    config_provider=SystemConfigProvider(prefix="basics"),
)
```
System provider use system environment for get config data. For unique - sitri lookup to "namespace" by prefix.

Example:

*In console:*
```bash
export BASICS_NAME=Huey
```

*In code:*
```python
name = conf.get_config("name")

print(name)  # output: Huey
```

#  Docs
Read base API references and other part documentation on https://sitri.readthedocs.io/

