builder/googlecompute: accept disk type, default pd-standard

pull/2830/head
Dan Buch 11 years ago
parent a4eba1102b
commit cac93d311c

@ -25,6 +25,7 @@ type Config struct {
DiskName string `mapstructure:"disk_name"`
DiskSizeGb int64 `mapstructure:"disk_size"`
DiskType string `mapstructure:"disk_type"`
ImageName string `mapstructure:"image_name"`
ImageDescription string `mapstructure:"image_description"`
InstanceName string `mapstructure:"instance_name"`
@ -70,6 +71,10 @@ func NewConfig(raws ...interface{}) (*Config, []string, error) {
c.DiskSizeGb = 10
}
if c.DiskType == "" {
c.DiskType = "pd-standard"
}
if c.ImageDescription == "" {
c.ImageDescription = "Created by Packer"
}

@ -42,6 +42,7 @@ type Image struct {
type InstanceConfig struct {
Description string
DiskSizeGb int64
DiskType string
Image Image
MachineType string
Metadata map[string]string

@ -236,6 +236,7 @@ func (d *driverGCE) RunInstance(c *InstanceConfig) (<-chan error, error) {
InitializeParams: &compute.AttachedDiskInitializeParams{
SourceImage: image.SelfLink,
DiskSizeGb: c.DiskSizeGb,
DiskType: fmt.Sprintf("zones/%s/diskTypes/%s", zone.Name, c.DiskType),
},
},
},

@ -54,6 +54,7 @@ func (s *StepCreateInstance) Run(state multistep.StateBag) multistep.StepAction
errCh, err := driver.RunInstance(&InstanceConfig{
Description: "New instance created by Packer",
DiskSizeGb: config.DiskSizeGb,
DiskType: config.DiskType,
Image: config.getImage(),
MachineType: config.MachineType,
Metadata: config.getInstanceMetadata(sshPublicKey),

Loading…
Cancel
Save