hcl2 模板中的 Packer 版本 1.6.1 不支持数据块
Posted
技术标签:
【中文标题】hcl2 模板中的 Packer 版本 1.6.1 不支持数据块【英文标题】:Data block not supported with packer version 1.6.1 in hcl2 templates 【发布时间】:2021-12-19 23:18:46 【问题描述】:我在安装了 packer 1.7.7 的本地系统中创建了一个 packer json 模板。然后我升级到 hcl2 模板。但是,当我尝试在具有打包程序版本 1.6.1 的詹金斯节点上运行打包程序管道时。它给了我 bwloe 错误
Blocks of type "data" are not expected here.
Error: Unsupported block type
经过研究,我意识到打包器版本 1.6.1 不支持其模板中的数据块,但支持 hcl2 模板,谁能建议我如何用打包器 1 中支持的东西替换下面模板中的数据块。
data "amazon-ami" "autogenerated_1"
access_key = "$var.aws_access_key"
filters =
root-device-type = "ebs"
virtualization-type = "hvm"
name = "**** Linux *"
most_recent = true
region = "$var.aws_region"
owners = ["$var.owner_id"]
secret_key = "$var.aws_secret_key"
when I am trying to consume this ami id in the source block It gives me error.
ami_name = "$var.ami_name"
associate_public_ip_address = false
force_deregister = true
iam_instance_profile = "abc"
instance_type = "****"
region = "$var.aws_region"
source_ami = data.amazon-ami.autogenerated_1.id
ssh_interface = "private_ip"
ssh_username = "user"
subnet_id = "subnet-********"
vpc_id = "vpc-***********"
【问题讨论】:
@Marcin 你能建议一下吗 进展如何?仍然不清楚为什么要升级打包程序? 【参考方案1】:jenkins 节点上的打包器管道,打包器版本为 1.6.1。
这样的旧版本不支持它。来自docs:
注意:数据源是 Packer 1.7 及更高版本中包含的一项功能
【讨论】:
这个@Marcin 是否有解决方法 如何在没有数据块的情况下在我的 hcl2 模板中传递源图像过滤器 @knowledge20 很遗憾,我不知道。最好使用当前版本的打包程序,而不是旧版本。以上是关于hcl2 模板中的 Packer 版本 1.6.1 不支持数据块的主要内容,如果未能解决你的问题,请参考以下文章