  def _ListInstancesForMIG(self, zone: str,
                           group_id: str) -> List['GoogleComputeInstance']:
    """Gets the list of instances managed by a managed instance group.

    Args:
      zone (str): The zone in which the managed instance group resides.
      group_id (str): The identifier of the managed instance group.

    Returns:
      List[GoogleComputeInstance]: List of GCE instances managed by the
          managed instance group.
    """
    groups_client = self.GceApi().instanceGroupManagers() # pylint: disable=no-member
    responses = common.ExecuteRequest(
        groups_client,
        'listManagedInstances',
        {
            'project': self.project_id,
            'zone': zone,
            'instanceGroupManager': group_id,
        })
    managed_instances = []
    for response in responses:
      for instance in response.get('managedInstances', []):
        # The returned name is a URL, with the instance name at the end
        name = instance['instance'].split('/')[-1]
        instance = GoogleComputeInstance(self.project_id, zone, name)
        managed_instances.append(instance)
    return managed_instances
Gets the list of instances managed by a managed instance group.

Args:
zone (str): The zone in which the managed instance group resides.
group_id (str): The identifier of the managed instance group.

Returns:
List[GoogleComputeInstance]: List of GCE instances managed by the
managed instance group.
libcloudforensics/providers/gcp/internal/compute.py