From a6194467acdbe8935e09d7ce22dc6d49d5895b26 Mon Sep 17 00:00:00 2001 From: Mitchell Hashimoto Date: Fri, 14 Jun 2013 12:29:48 -0700 Subject: [PATCH] builder/*: Adhere to the new interface --- builder/amazonebs/builder.go | 12 ++++++++---- builder/virtualbox/builder.go | 10 +++++++--- builder/vmware/builder.go | 9 ++++++--- 3 files changed, 21 insertions(+), 10 deletions(-) diff --git a/builder/amazonebs/builder.go b/builder/amazonebs/builder.go index 9e431faa2..495f4eea6 100644 --- a/builder/amazonebs/builder.go +++ b/builder/amazonebs/builder.go @@ -44,10 +44,14 @@ type Builder struct { runner multistep.Runner } -func (b *Builder) Prepare(raw interface{}) error { - err := mapstructure.Decode(raw, &b.config) - if err != nil { - return err +func (b *Builder) Prepare(raws ...interface{}) error { + var err error + + for _, raw := range raws { + err := mapstructure.Decode(raw, &b.config) + if err != nil { + return err + } } if b.config.SSHPort == 0 { diff --git a/builder/virtualbox/builder.go b/builder/virtualbox/builder.go index b2275ce1f..7a290e0ba 100644 --- a/builder/virtualbox/builder.go +++ b/builder/virtualbox/builder.go @@ -47,10 +47,14 @@ type config struct { RawSSHWaitTimeout string `mapstructure:"ssh_wait_timeout"` } -func (b *Builder) Prepare(raw interface{}) error { +func (b *Builder) Prepare(raws ...interface{}) error { var err error - if err := mapstructure.Decode(raw, &b.config); err != nil { - return err + + for _, raw := range raws { + err := mapstructure.Decode(raw, &b.config) + if err != nil { + return err + } } if b.config.GuestOSType == "" { diff --git a/builder/vmware/builder.go b/builder/vmware/builder.go index b502083df..19710b3f9 100644 --- a/builder/vmware/builder.go +++ b/builder/vmware/builder.go @@ -49,9 +49,12 @@ type config struct { RawSSHWaitTimeout string `mapstructure:"ssh_wait_timeout"` } -func (b *Builder) Prepare(raw interface{}) error { - if err := mapstructure.Decode(raw, &b.config); err != nil { - return err +func (b *Builder) Prepare(raws ...interface{}) error { + for _, raw := range raws { + err := mapstructure.Decode(raw, &b.config) + if err != nil { + return err + } } if b.config.DiskName == "" {