func NewServer()

in gke-windows-builder/builder/builder/gce.go [146:163]


func NewServer(ctx context.Context, bs *WindowsBuildServerConfig, projectID string) (*Server, error) {
	s := &Server{projectID: projectID, zone: *bs.Zone}
	var err error
	if err = s.newGCEService(ctx); err != nil {
		log.Printf("Failed to start GCE service to create servers: %+v", err)
		return nil, err
	}
	if err = s.newInstance(bs); err != nil {
		log.Printf("Failed to start Windows VM: %+v", err)
		return nil, err
	}
	err = s.resetPasswordAndPopulateRemoteServer(bs.UseInternalIP)
	if err != nil {
		return nil, err
	}

	return s, nil
}