7个稳定版本

2.1.0 2024年5月21日
2.0.4 2023年5月28日
2.0.3 2022年7月29日
2.0.2 2022年2月1日
1.0.1 2021年11月30日

#1002进程宏

Download history 20/week @ 2024-04-14 25/week @ 2024-04-21 25/week @ 2024-04-28 17/week @ 2024-05-05 42/week @ 2024-05-12 193/week @ 2024-05-19 55/week @ 2024-05-26 40/week @ 2024-06-02 38/week @ 2024-06-09 28/week @ 2024-06-16 32/week @ 2024-06-23 32/week @ 2024-06-30 30/week @ 2024-07-07 42/week @ 2024-07-14 10/week @ 2024-07-21 140/week @ 2024-07-28

222 每月下载次数
6 个crate中使用 (通过 env-url)

MIT 许可证

9KB
117

ENV URL

License Cargo Documentation

Env组合服务URL,包含键覆盖,以提供最大灵活性和简化与Kubernetes的集成。

ENV映射行为

ENV
{PREFIX}_URL 设置服务URL,忽略其他覆盖
{PREFIX}_URL_ENV 覆盖 {PREFIX}_URL 环境映射
{PREFIX}_SCHEME 设置URL方案组件
{PREFIX}_SCHEME_ENV 覆盖 {PREFIX}_SCHEME 环境映射
{PREFIX}_HOST 设置URL主机组件
{PREFIX}_HOST_ENV 覆盖 {PREFIX}_HOST 环境映射
{PREFIX}_PATH 设置URL路径组件
{PREFIX}_PATH_ENV 覆盖 {PREFIX}_PATH 环境映射
{PREFIX}_QUERY 设置URL查询组件
{PREFIX}_QUERY_ENV 覆盖 {PREFIX}_QUERY 环境映射
{PREFIX}_USERINFO 设置URL用户信息组件
{PREFIX}_USERINFO_ENV 覆盖 {PREFIX}_USERINFO 环境映射

示例

use env_url::*;

#[derive(EnvURL)]
#[env_url(env_prefix = "REDIS", default = "redis://127.0.0.1:6379")]
pub struct RedisDB;

let service_url = RedisDB::service_url();

Kubernetes使用

由于Kubernetes可以将服务设置为环境变量以进行服务发现,因此能够像这样覆盖环境映射非常有用

REDIS_HOST_ENV: STAGE_REDIS_MASTER_PORT_6379_TCP_ADDR
REDIS_PORT_ENV: STAGE_REDIS_MASTER_SERVICE_PORT_REDIS

依赖关系

~1.6–2.3MB
~72K SLoC