mirror of
https://github.com/hashicorp/packer.git
synced 2026-02-20 08:20:06 -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
|
||
|---|---|---|
| .. | ||
| access_config.go | ||
| artifact.go | ||
| artifact_test.go | ||
| builder.go | ||
| builder.hcl2spec.go | ||
| builder_test.go | ||
| image_config.go | ||
| image_config_test.go | ||
| networks.go | ||
| networks_test.go | ||
| run_config.go | ||
| run_config_test.go | ||
| server.go | ||
| ssh.go | ||
| step_add_image_members.go | ||
| step_allocate_ip.go | ||
| step_create_image.go | ||
| step_create_volume.go | ||
| step_detach_volume.go | ||
| step_discover_network.go | ||
| step_get_password.go | ||
| step_key_pair.go | ||
| step_key_pair_test.go | ||
| step_load_flavor.go | ||
| step_run_source_server.go | ||
| step_source_image_info.go | ||
| step_stop_server.go | ||
| step_update_image_mindisk.go | ||
| step_update_image_tags.go | ||
| step_update_image_visibility.go | ||
| step_wait_for_rackconnect.go | ||
| volume.go | ||