我们目前有一个包含20个软件包的仓库。
在根文件夹中,我们有一个.env文件,其中包含许多env-vars。 有些软件包有自己的.env文件,用于扩展或覆盖全局文件。
我目前正在尝试编写一个脚本,该脚本确切显示哪个包使用哪个env-var并将它们与.env文件和实际AWS实例中的包进行比较。这只是清理这些混乱的第一步。
有没有办法找出哪个软件包正在使用环境变量? 目前我有这样的东西(简化版):
grep -rhoE 'process\.env\.[a-zA-Z0-9_\-]+' $$ROOT_DIR/packages
这样我得到大约180个变量。但是由于环境变量也可以被分解,因此该“脚本”不会获取这些变量。
是否还有另一种更可靠的方式来获取所有使用过的env-var?像节点模块一样?
手工遍历代码是不可行的,因为它只是太多的代码,并且此步骤应该是自动化的。