跳转到主要内容

Pydantic设置的支持Yaml

项目描述

pydantic-settings-yaml

注意:2.x需要Pydantic>2.0<3.0。如果您仍然需要Pydantic 1.x,请安装1.x版本。

Pydantic设置的支持Yaml。将yaml配置文件作为嵌套Pydantic模型加载。

允许在yaml配置文件中使用file:xxxx占位符来存储机密信息。占位符将被文件内容替换。路径相对于下面的'secrets_dir'设置。

用法

$cat /config/config.yaml

database: 
  password: <file:database_password>
  username: my_database_username

$cat /secrets/database_password

my_secret_database_password

Python代码示例

    from pydantic import BaseModel
    from pydantic_settings_yaml import YamlBaseSettings
    from pydantic_settings import SettingsConfigDict

    class Database(BaseModel):
        username: str
        password: str


    class Settings(YamlBaseSettings):
        database: Database

        # configure paths to secrets directory and YAML config file
        model_config = SettingsConfigDict(
            secrets_dir="/secrets", yaml_file="/config/config.yaml")

    settings = Settings()

    assert settings.dict() == {
        "database": {
            "password": "my_secret_database_password", 
            "username": "my_database_username"
        }
    }

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源分发

pydantic_settings_yaml-0.2.0.tar.gz (7.4 kB 查看哈希值)

上传时间:

构建分发

pydantic_settings_yaml-0.2.0-py2.py3-none-any.whl (6.6 kB 查看哈希值)

上传时间: Python 2 Python 3

由以下机构支持

AWSAWS云计算和安全赞助商DatadogDatadog监控FastlyFastlyCDNGoogleGoogle下载分析MicrosoftMicrosoftPSF赞助商PingdomPingdom监控SentrySentry错误日志StatusPageStatusPage状态页面