I am trying to create snapshots for sheepdog disks using libvirt API or virsh. The disk is defined in domain as follows:

<disk type='network' device='disk'>
      <driver name='qemu' cache='none'/>
      <source protocol='sheepdog' name='sheepvol1'/>
      <target dev='vdb' bus='virtio'/>

I have tried both options "external" and "internal". If I try to create external snapshot with virsh command:

snapshot-create-as vps vpssnap --disk-only --diskspec vda,snapshot=no --diskspec vdb,snapshot=external

I get an error: source for disk 'vdb' is not a regular file; refusing to generate external snapshot name.

If I try the same command but with "internal" mode:

snapshot-create-as vps vpssnap --disk-only --diskspec vda,snapshot=no --diskspec vdb,snapshot=internal

virsh creates a snapshot, but this snapshot is useless. If i try to revert to this snapshot i get an error: "qemu-img: Could not open 'sheepvol1': No such file or directory", plus if I list all VDIs with "collie vdi list" I do not see any snapshots there. So i guess virsh does not create an appropriate sheepdog snapshot at all.

Can someone please tell me how to create snapshots for sheepdog disks?

Thank you.