diff --git a/command/exec_test.go b/command/exec_test.go index f85849d45..7a13201f3 100644 --- a/command/exec_test.go +++ b/command/exec_test.go @@ -121,6 +121,7 @@ func getBareComponentFinder() packer.ComponentFinder { "file": func() (packersdk.Builder, error) { return &file.Builder{}, nil }, "null": func() (packersdk.Builder, error) { return &null.Builder{}, nil }, "amazon-ebs": func() (packersdk.Builder, error) { return &ebs.Builder{}, nil }, + "azure-arm": func() (packersdk.Builder, error) { return &ebs.Builder{}, nil }, }, Provisioners: packer.MapOfProvisioner{ "shell-local": func() (packersdk.Provisioner, error) { return &shell_local.Provisioner{}, nil }, diff --git a/command/hcl2_upgrade.go b/command/hcl2_upgrade.go index 5856df8f7..2c04f01a0 100644 --- a/command/hcl2_upgrade.go +++ b/command/hcl2_upgrade.go @@ -637,7 +637,7 @@ func jsonBodyToHCL2Body(out *hclwrite.Body, kvs map[string]interface{}) { case map[string]interface{}: var mostComplexElem interface{} for _, randomElem := range value { - if k == "linux_options" || k == "network_interface" { + if k == "linux_options" || k == "network_interface" || k == "shared_image_gallery" { break } // HACK: we take the most complex element of that map because diff --git a/command/hcl2_upgrade_test.go b/command/hcl2_upgrade_test.go index 101b5b528..598ae4a3f 100644 --- a/command/hcl2_upgrade_test.go +++ b/command/hcl2_upgrade_test.go @@ -32,6 +32,7 @@ func Test_hcl2_upgrade(t *testing.T) { {folder: "nonexistent", flags: []string{}, exitCode: 1, exitEarly: true}, {folder: "placeholders", flags: []string{}, exitCode: 0}, {folder: "ami_test", flags: []string{}, exitCode: 0}, + {folder: "azure_shg", flags: []string{}, exitCode: 0}, } for _, tc := range tc { diff --git a/command/test-fixtures/hcl2_upgrade/azure_shg/expected.pkr.hcl b/command/test-fixtures/hcl2_upgrade/azure_shg/expected.pkr.hcl new file mode 100644 index 000000000..089ce80a7 --- /dev/null +++ b/command/test-fixtures/hcl2_upgrade/azure_shg/expected.pkr.hcl @@ -0,0 +1,11 @@ + +source "azure-arm" "autogenerated_1" { + shared_image_gallery { + gallery_name = "web_app" + } +} + +build { + sources = ["source.azure-arm.autogenerated_1"] + +} diff --git a/command/test-fixtures/hcl2_upgrade/azure_shg/input.json b/command/test-fixtures/hcl2_upgrade/azure_shg/input.json new file mode 100644 index 000000000..02f89bf95 --- /dev/null +++ b/command/test-fixtures/hcl2_upgrade/azure_shg/input.json @@ -0,0 +1,8 @@ +{ + "builders": [{ + "type": "azure-arm", + "shared_image_gallery": { + "gallery_name": "web_app" + } + }] +}