diff options
Diffstat (limited to 'vm/gce')
| -rw-r--r-- | vm/gce/gce.go | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/vm/gce/gce.go b/vm/gce/gce.go index 93a96c5e8..91f76ff68 100644 --- a/vm/gce/gce.go +++ b/vm/gce/gce.go @@ -39,11 +39,12 @@ func init() { } type Config struct { - Count int `json:"count"` // number of VMs to use - MachineType string `json:"machine_type"` // GCE machine type (e.g. "n1-highcpu-2") - GCSPath string `json:"gcs_path"` // GCS path to upload image - GCEImage string `json:"gce_image"` // pre-created GCE image to use - Preemptible bool `json:"preemptible"` // use preemptible VMs if available (defaults to true) + Count int `json:"count"` // number of VMs to use + MachineType string `json:"machine_type"` // GCE machine type (e.g. "n1-highcpu-2") + GCSPath string `json:"gcs_path"` // GCS path to upload image + GCEImage string `json:"gce_image"` // pre-created GCE image to use + Preemptible bool `json:"preemptible"` // use preemptible VMs if available (defaults to true) + DisplayDevice bool `json:"display_device"` // enable a virtual display device } type Pool struct { @@ -71,8 +72,9 @@ func ctor(env *vmimpl.Env) (vmimpl.Pool, error) { return nil, fmt.Errorf("config param name is empty (required for GCE)") } cfg := &Config{ - Count: 1, - Preemptible: true, + Count: 1, + Preemptible: true, + DisplayDevice: true, } if err := config.LoadData(env.Config, cfg); err != nil { return nil, fmt.Errorf("failed to parse gce vm config: %v", err) @@ -150,7 +152,7 @@ func (pool *Pool) Create(workdir string, index int) (vmimpl.Instance, error) { } log.Logf(0, "creating instance: %v", name) ip, err := pool.GCE.CreateInstance(name, pool.cfg.MachineType, pool.cfg.GCEImage, - string(gceKeyPub), pool.cfg.Preemptible) + string(gceKeyPub), pool.cfg.Preemptible, pool.cfg.DisplayDevice) if err != nil { return nil, err } |
