我遇到了以下这些麻烦的问题:

  • 代码中使用的变量却没有在 \**.env.example**```中显示
  • 旧的环境变量永远存在
  • CI 的secret没有人记录下

这导致了“在我的机器上工作”的问题。

所以我建立了一个小型CLI工具来检测这种漂移。

它会扫描您的仓库并显示:

  • 缺失的环境变量
  • 未使用的环境变量
  • 未记录的环境变量
  • 只在CI中使用的环境变量

示例输出:

DATABASE_URL
REDIS_URL

缺失的环境变量:

SENTRY_DSN

只有在CI中:

PYPI_API_TOKEN

这让我意识到在一个项目中缺失的DATABASE_URL变量,那将会导致生产环境的崩溃。

我很好奇你们是如何管理环境变量的,尤其是在多个团队之间?

如果有人想尝试,请去我的github项目:https://github.com/CodMughees/envradar

对您任何反馈或建议都深感感谢!