我需要创建简单的terraform基础架构,并且部分基础架构需要使用java Spring Boot应用程序创建AWS Lambda作为源代码 .
我读了与lambda相关的documentation,看起来就像现在terraform只能加载来自local file或来自s3 bucket的来源 . 在我的例子中,我将应用程序jar文件存储在Nexus存储库(二进制存储)中,并希望在从Nexus创建Lambda期间加载源代码/ jar .
基于terraform文档,它具有:
-
local provider只能创建文件 .
-
http provider支持Content-Type
text/* or application/json
的响应,在我的情况下我有application/java-archive
-
external provider期待json响应,在我的情况下我有归档 .
没有一种方法可以解决我的问题 . 因为我可以创建bash文件,它将为jar文件运行 wget
命令,然后运行terraform命令 . 但从我的角度看,这看起来并不漂亮 . 也许您可以建议任何其他更准确和灵活的解决方案 .
1 回答
最简单的解决方案是您已经建议的解决方案 - 在首先获取jar文件的父命令中包装terraform - 或者甚至将其记录为必需的手动步骤/依赖项 . 我相信这是相当普遍的 .
或者,如果您真的想要提供没有现有提供商的东西,您可以create your own Terraform provider .