Makefile:将环境变量设置为将来作为构建步骤的一部分使用

Makefile:将环境变量设置为将来作为构建步骤的一部分使用,makefile,Makefile,是否可以将环境变量设置为生成步骤的一部分,然后由后续生成步骤使用 我正在努力实现的目标: 一个构建步骤将登录到机密服务器,并获取要求其构建的特定构建目标的登录凭据 稍后的构建步骤将使用这些凭据部署到特定的目标环境 是否有一种方法可以从步骤1导出一个环境变量,然后在步骤2中可用?否,这是不可能的。在所有POSIX系统中,一个进程不能修改其父进程或同级进程的环境,这是进程的一个基本方面。因此,当一个进程无论如何调用都获得这些值时,它无法将它们提升到其父进程的环境中 进程可以将它们写入一个文件,以便以

是否可以将环境变量设置为生成步骤的一部分,然后由后续生成步骤使用

我正在努力实现的目标:

一个构建步骤将登录到机密服务器,并获取要求其构建的特定构建目标的登录凭据

稍后的构建步骤将使用这些凭据部署到特定的目标环境


是否有一种方法可以从步骤1导出一个环境变量,然后在步骤2中可用?

否,这是不可能的。在所有POSIX系统中,一个进程不能修改其父进程或同级进程的环境,这是进程的一个基本方面。因此,当一个进程无论如何调用都获得这些值时,它无法将它们提升到其父进程的环境中

进程可以将它们写入一个文件,以便以后的进程可以读取

或者,流程可以将它们打印出来,父流程可以捕获输出并记住它,并将其解析到自己的环境中。在GNU make中,这可能类似于:

creds := $(shell get-my-credentials)
如果没有更多关于需求和限制的细节,就很难做到精确