CA-86883: Detach SR if SR.destroy fails
CA-86883: Detach SR if SR.destroy fails

The storage backend can destroy an SR only if it is attached.
Therefore when xapi wants to destroy an SR, first it attaches it.
When the backend destroys the SR it is no longer attached.

This change adds exception handling so that if the backend fails
to destroy the SR, xapi will detach it.

simonjbeaumont/xcp-rrdd,johnelse/xcp-rrdd,koushikcgit/xcp-rrdd,sharady/xcp-networkd,djs55/xcp-networkd,koushikcgit/xcp-networkd,djs55/xcp-rrdd,koushikcgit/xcp-rrdd,simonjbeaumont/xcp-rrdd,djs55/xcp-rrdd,koushikcgit/xcp-rrdd,johnelse/xcp-rrdd,sharady/xcp-networkd,koushikcgit/xcp-networkd,djs55/xcp-networkd