mirror of
https://github.com/hashicorp/packer.git
synced 2026-02-20 00:10:04 -05:00
This will allow to generate the config files:
```go
package main
import (
"fmt"
"github.com/hashicorp/hcl/v2/gohcl"
"github.com/hashicorp/hcl/v2/hclwrite"
"github.com/hashicorp/packer/builder/alicloud/ecs"
)
func main() {
name := "name"
app := ecs.FlatConfig{
AlicloudImageName: &name,
ECSSystemDiskMapping: &ecs.FlatAlicloudDiskDevice{
DiskName: &name,
},
}
f := hclwrite.NewEmptyFile()
block := gohcl.EncodeAsBlock(&app, `source "something" "something"`)
f.Body().AppendBlock(block)
fmt.Printf("%s", f.Bytes())
}
```
Will output:
```
source "something" "something" {
packer_user_variables = null
packer_sensitive_variables = null
image_name = "name"
image_share_account = null
image_unshare_account = null
image_copy_regions = null
image_copy_names = null
tags = null
tag = null
system_disk_mapping = { disk_category = null, disk_delete_with_instance = null, disk_descri
ption = null, disk_device = null, disk_encrypted = null, disk_name = "name", disk_size = null, disk_
snapshot_id = null }
image_disk_mappings = null
ssh_remote_tunnels = null
ssh_local_tunnels = null
ssh_public_key = null
ssh_private_key = null
}
```
This is a good first step for #9015 and #9282
fix #9304
|
||
|---|---|---|
| .. | ||
| alicloud-import | ||
| amazon-import | ||
| artifice | ||
| checksum | ||
| compress | ||
| digitalocean-import | ||
| docker-import | ||
| docker-push | ||
| docker-save | ||
| docker-tag | ||
| exoscale-import | ||
| googlecompute-export | ||
| googlecompute-import | ||
| manifest | ||
| shell-local | ||
| ucloud-import | ||
| vagrant | ||
| vagrant-cloud | ||
| vsphere | ||
| vsphere-template | ||
| yandex-export | ||