'Takes a snapshot of a volume.
One could snap a volume before it has been activated, so activate
by mapping and unmapping to a random server and let them.  This
should be a fail but the Tempest tests require it.
:param scvolume: Volume to snapshot.
:param replayid: Name to use for the snapshot.  This is a portion of
the snapshot ID as we do not have space for the
entire GUID in the replay description.
:param expire: Time in minutes before the replay expires.  For most
snapshots this will be 0 (never expire) but if we are
cloning a volume we will snap it right before creating
the clone.
:returns: The Dell replay object or None.
:raises VolumeBackendAPIException: On failure to intialize volume.'

def create_replay(self, scvolume, replayid, expire):

    replay = None
    if (scvolume is not None):
        if (not self._is_active(scvolume)):
            self._init_volume(scvolume)
            scvolume = self.get_volume(self._get_id(scvolume))
            if (not self._is_active(scvolume)):
                raise exception.VolumeBackendAPIException(message=(_('Unable    to    create    snapshot    from    empty    volume.    %s') % scvolume['name']))
        payload = {}
        payload['description'] = replayid
        payload['expireTime'] = expire
        r = self.client.post(('StorageCenter/ScVolume/%s/CreateReplay' % self._get_id(scvolume)), payload, True)
        if self._check_result(r):
            replay = self._first_result(r)
    if (replay is None):
        LOG.warning('Unable    to    create    snapshot    %s', replayid)
    return replay
