@@ -547,7 +547,13 @@ func testImage(imageConfig *internalGCEImage, junitFilePrefix string) *TestResul
547
547
548
548
// Provision a gce instance using image
549
549
func createInstance (imageConfig * internalGCEImage ) (string , error ) {
550
- klog .V (1 ).Infof ("Creating instance %+v" , * imageConfig )
550
+ p , err := computeService .Projects .Get (* project ).Do ()
551
+ if err != nil {
552
+ return "" , fmt .Errorf ("failed to get project info %q" , * project )
553
+ }
554
+ // Use default service account
555
+ serviceAccount := p .DefaultServiceAccount
556
+ klog .V (1 ).Infof ("Creating instance %+v with service account %q" , * imageConfig , serviceAccount )
551
557
name := imageToInstanceName (imageConfig )
552
558
i := & compute.Instance {
553
559
Name : name ,
@@ -572,6 +578,14 @@ func createInstance(imageConfig *internalGCEImage) (string, error) {
572
578
},
573
579
},
574
580
},
581
+ ServiceAccounts : []* compute.ServiceAccount {
582
+ {
583
+ Email : serviceAccount ,
584
+ Scopes : []string {
585
+ "https://www.googleapis.com/auth/cloud-platform" ,
586
+ },
587
+ },
588
+ },
575
589
}
576
590
577
591
for _ , accelerator := range imageConfig .resources .Accelerators {
@@ -591,7 +605,6 @@ func createInstance(imageConfig *internalGCEImage) (string, error) {
591
605
i .GuestAccelerators = append (i .GuestAccelerators , ac )
592
606
}
593
607
594
- var err error
595
608
i .Metadata = imageConfig .metadata
596
609
if _ , err := computeService .Instances .Get (* project , * zone , i .Name ).Do (); err != nil {
597
610
op , err := computeService .Instances .Insert (* project , * zone , i ).Do ()
0 commit comments