Merge pull request #2353 from mitchellh/b-gce-comm-default

builder/googlecompute: default SSH settings properly [GH-2340]
This commit is contained in:
Mitchell Hashimoto 2015-06-29 14:03:46 -07:00
commit 2ee2850c1a
2 changed files with 32 additions and 0 deletions

View File

@ -97,6 +97,9 @@ func NewConfig(raws ...interface{}) (*Config, []string, error) {
} }
var errs *packer.MultiError var errs *packer.MultiError
if es := c.Comm.Prepare(&c.ctx); len(es) > 0 {
errs = packer.MultiErrorAppend(errs, es...)
}
// Process required parameters. // Process required parameters.
if c.ProjectId == "" { if c.ProjectId == "" {

View File

@ -152,6 +152,35 @@ func TestConfigPrepare(t *testing.T) {
} }
} }
func TestConfigDefaults(t *testing.T) {
cases := []struct {
Read func(c *Config) interface{}
Value interface{}
}{
{
func(c *Config) interface{} { return c.Comm.Type },
"ssh",
},
{
func(c *Config) interface{} { return c.Comm.SSHPort },
22,
},
}
for _, tc := range cases {
raw := testConfig(t)
c, warns, errs := NewConfig(raw)
testConfigOk(t, warns, errs)
actual := tc.Read(c)
if actual != tc.Value {
t.Fatalf("bad: %#v", actual)
}
}
}
func testAccountFile(t *testing.T) string { func testAccountFile(t *testing.T) string {
tf, err := ioutil.TempFile("", "packer") tf, err := ioutil.TempFile("", "packer")
if err != nil { if err != nil {