code: def _launch_instance(self):
          
          metadata = {'key': 'ssh-keys', 'value': self.ssh_public_key}
          self.running_instance_id = ipa_utils.generate_instance_name(
              'gce-ipa-test'
          )
          self.logger.debug('ID of instance: %s' % self.running_instance_id)
  
          kwargs = {
              'location': self.region,
              'ex_metadata': metadata,
              'ex_service_accounts': [{
                  'email': self.service_account_email,
                  'scopes': ['storage-ro']
              }]
          }
  
          if self.subnet_id:
              kwargs['ex_subnetwork'] = self._get_subnet(self.subnet_id)
              kwargs['ex_network'] = kwargs['ex_subnetwork'].network
  
          try:
              instance = self.compute_driver.create_node(
                  self.running_instance_id,
                  self.instance_type or GCE_DEFAULT_TYPE,
                  self.image_id,
                  **kwargs
              )
          except ResourceNotFoundError as error:
              try:
                  message = error.value['message']
              except TypeError:
                  message = error
  
              raise GCECloudException(
                  'An error occurred launching instance: {message}.'.format(
                      message=message
                  )
              )
  
          self.compute_driver.wait_until_running(
              [instance],
              timeout=self.timeout
          )
docs: Launch an instance of the given image.