写了一个 golang 解析环境变量的工具库,准备用在生产里。

2022-03-02 15:18:45 +08:00
 xmlHexagram

将环境变量映射到一个 struct 上,准备去给公司代码下毒。

因为公司里项目不使用配置文件,都是通过环境变量,而 viper 的环境变量解析不是很方便,就自己写了一个。

在个人项目里面用过了,觉得挺方便的,整理了一下开源了出来。

帮忙看看能不能说服 CTO 让我下毒。

项目地址

https://github.com/XMLHexagram/emp

1777 次点击
所在节点    Go 编程语言
5 条回复
xmlHexagram
2022-03-02 15:22:35 +08:00
主要构想是定义 struct 并且映射环境变量到 struct 上,像是 json.Unmarshal()那样。

提供了通过 tagName 自定义 name, prefix, ignore 。

并且可以配置 allowEmpty, AutoPrefix, DirectDefualt, ParseStringToArrayAndSlice 等帮助更方便的解析
sanggao
2022-03-02 16:13:42 +08:00
很牛了
Hanggi
2022-03-02 17:00:14 +08:00
viper 不香吗?
yiplee
2022-03-02 18:41:20 +08:00
类似需求我之前用过 https://github.com/kelseyhightower/envconfig ,也挺好用的
xmlHexagram
2022-03-02 23:28:31 +08:00
@Hanggi viper 不能映射环境变量到 struct (至少我没有翻到用法)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/837450

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX