diff --git a/pkg/metadata/provider_gcp.go b/pkg/metadata/provider_gcp.go index 24c777397..49d25680a 100644 --- a/pkg/metadata/provider_gcp.go +++ b/pkg/metadata/provider_gcp.go @@ -53,7 +53,7 @@ func (p *ProviderGCP) Extract() ([]byte, error) { } // Generic userdata - userData, err := gcpGet(instance + "attributes/userdata") + userData, err := gcpGet(instance + "attributes/user-data") if err != nil { log.Printf("GCP: Failed to get user-data: %s", err) // This is not an error @@ -102,8 +102,10 @@ func (p *ProviderGCP) handleSSH() error { return fmt.Errorf("Failed to get sshKeys: %s", err) } - if err := os.Mkdir(path.Join(ConfigPath, SSH), 0755); err != nil { - return fmt.Errorf("Failed to create %s: %s", SSH, err) + if _, err := os.Stat(path.Join(ConfigPath, SSH)); os.IsNotExist(err) { + if err := os.Mkdir(path.Join(ConfigPath, SSH), 0755); err != nil { + return fmt.Errorf("Failed to create %s: %s", SSH, err) + } } rootKeys := "" diff --git a/src/cmd/linuxkit/gcp.go b/src/cmd/linuxkit/gcp.go index f014f36aa..f8d0fa633 100644 --- a/src/cmd/linuxkit/gcp.go +++ b/src/cmd/linuxkit/gcp.go @@ -266,7 +266,7 @@ func (g GCPClient) CreateInstance(name, image, zone, machineType string, disks D Value: sshKey, }, { - Key: "userdata", + Key: "user-data", Value: data, }, },