Makefile:设置环境变量以供将来在构建步骤中使用

时间:2019-02-26 01:51:08

标签: makefile

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

我要完成的工作:

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

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

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

1 个答案:

答案 0 :(得分:1)

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

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

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

creds := $(shell get-my-credentials)

如果没有更多有关要求和限制的详细信息,就很难弄清楚。