sparse-intern-71089
08/20/2020, 5:20 AMlittle-cartoon-10569
08/20/2020, 5:24 AMdb:size: large
redis:enabled: true
?little-cartoon-10569
08/20/2020, 5:25 AMchilly-rainbow-79265
08/20/2020, 5:36 AMchilly-rainbow-79265
08/20/2020, 5:36 AMvm:config:
- count: 1
data_disk_size: 50
name: cassandra
resource_group: pu_demo
type: Standard_A8_v2
user_name: deployer
chilly-rainbow-79265
08/20/2020, 5:37 AMlittle-cartoon-10569
08/20/2020, 5:40 AMconst vmConfigBucket = new pulumi.Config('vm');
const vmConfig = vmConfigBucket.requireObject<VmConfig>('config');
little-cartoon-10569
08/20/2020, 5:41 AMchilly-rainbow-79265
08/20/2020, 5:45 AMlittle-cartoon-10569
08/20/2020, 5:47 AMvar spec InstanceSpec
cfg := config.New(ctx, "vm")
cfg.RequireObject("instanceSpec", &spec)
little-cartoon-10569
08/20/2020, 5:47 AMlittle-cartoon-10569
08/20/2020, 5:48 AMchilly-rainbow-79265
08/20/2020, 5:49 AMlittle-cartoon-10569
08/20/2020, 5:50 AMchilly-rainbow-79265
08/20/2020, 6:07 AMchilly-rainbow-79265
08/20/2020, 6:07 AMconfig:
vm:instance_spec:
- count: 1
data_disk_size: 50
name: cassandra
resource_group: pu_demo
type: Standard_A8_v2
user_name: deployer
main.go
// vm config struct
type Data struct {
Data []struct {
Name string `json:"name"`
Type string `json:"type"`
Count int `json:"count"`
DataDiskSize int `json:"data_disk_size"`
UserName string `json:"user_name"`
ResourceGroupName string `json:"resource_group"`
} `json:"instance_spec"`
}
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
vmConfig := config.New(ctx, "vm")
var d Data
if err := vmConfig.GetObject("instance_spec", &d); err != nil {
return err
})
fmt.Printf("%v\n", d)
return nil
)}
}
chilly-rainbow-79265
08/20/2020, 6:11 AMDiagnostics:
pulumi:pulumi:Stack (demo-dev):
error: program failed: 1 error occurred:
* json: cannot unmarshal array into Go value of type main.Data
exit status 1
error: an unhandled error occurred: program exited with non-zero exit code: 1
little-cartoon-10569
08/20/2020, 6:58 AMchilly-rainbow-79265
08/20/2020, 7:10 AM