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日

#9#composable

Download history 22/week @ 2024-04-24 17/week @ 2024-05-01 22/week @ 2024-05-08 147/week @ 2024-05-15 102/week @ 2024-05-22 40/week @ 2024-05-29 38/week @ 2024-06-05 36/week @ 2024-06-12 22/week @ 2024-06-19 23/week @ 2024-06-26 40/week @ 2024-07-03 36/week @ 2024-07-10 32/week @ 2024-07-17 51/week @ 2024-07-24 30/week @ 2024-07-31 13/week @ 2024-08-07

131 每月下载量
用于 5 个 (3 直接) crate

MIT 许可证

8KB

ENV Url

License Cargo Documentation

Env-composable service urls 完整的键覆盖,以便提供最大灵活性,并简化与 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
~71K SLoC