def create_snapshot()

in gce_rescue/tasks/backup.py [0:0]


def create_snapshot(vm) -> Dict:
  """
  Create a snaphost of the instance boot disk, adding self._ts to the disk name.
  https://cloud.google.com/compute/docs/reference/rest/v1/disks/createSnapshot
  Returns:
    operation-result: Dict
  """

  disk_name = vm.disks['disk_name']
  # Patch issues/23
  region = vm.zone[:-2]
  snapshot_name = f'{disk_name}-{vm.ts}'
  snapshot_body = {
    'name': snapshot_name,
    'storageLocations': [ region ]
  }
  _logger.info(f'Creating snapshot {snapshot_body}... ')
  operation = vm.compute.disks().createSnapshot(
    **vm.project_data,
    disk = disk_name,
    body = snapshot_body).execute()
  result = wait_for_operation(vm, oper=operation)
  return result