'Creates a snapshot.'

def create_snapshot(self, snapshot):

    (__, path) = self._get_export_ip_path(snapshot.volume_id)
    volume_path = ('%s/%s' % (path, snapshot.volume_name))
    volume_path = ('%(path)s/%(volume_name)s' % {'path': path, 'volume_name': snapshot.volume_name})
    model_update = {}
    with self._get_client() as c:
        provider_id = c.create_snapshot(volume_path, (snapshot.volume.display_name or snapshot.volume_name), snapshot.volume_id, (snapshot.display_name or snapshot.name))
        snapshot.provider_id = provider_id
        model_update['provider_id'] = provider_id
    return model_update
