attach_ceph_image.patch
| /var/lib/one/remotes/vmm/kvm/attach_disk 2013-08-08 10:26:44.475901648 +0800 | ||
|---|---|---|
| 40 | 40 |
done < <($XPATH $DISK_XPATH/DRIVER \ |
| 41 | 41 |
$DISK_XPATH/TYPE \ |
| 42 | 42 |
$DISK_XPATH/READONLY \ |
| 43 |
$DISK_XPATH/CACHE) |
|
| 43 |
$DISK_XPATH/CACHE \ |
|
| 44 |
$DISK_XPATH/IMAGE_ID) |
|
| 44 | 45 | |
| 45 | 46 |
DRIVER="${XPATH_ELEMENTS[0]:-$DEFAULT_TYPE}"
|
| 46 | 47 |
TYPE="${XPATH_ELEMENTS[1]}"
|
| 47 | 48 |
READONLY="${XPATH_ELEMENTS[2]}"
|
| 48 | 49 |
CACHE="${XPATH_ELEMENTS[3]}"
|
| 50 |
IMAGE="${XPATH_ELEMENTS[4]}"
|
|
| 49 | 51 | |
| 50 | 52 |
TYPE=$(echo "$TYPE"|tr A-Z a-z) |
| 51 | 53 | |
| 54 |
ATTACH_FILE="$SOURCE.attach" |
|
| 55 | ||
| 52 | 56 |
case "$TYPE" in |
| 53 | 57 |
block) |
| 54 | 58 |
TYPE_SOURCE="dev" |
| ... | ... | |
| 60 | 64 |
TYPE_XML="file" |
| 61 | 65 |
DEVICE="cdrom" |
| 62 | 66 |
;; |
| 67 |
rbd) |
|
| 68 |
TYPE_SOURCE="protocol" |
|
| 69 |
TYPE_XML="network" |
|
| 70 |
SOURCE="'rbd' name='one/one-$IMAGE'" |
|
| 71 |
DEVICE="disk" |
|
| 72 |
;; |
|
| 63 | 73 |
*) |
| 64 | 74 |
#NOTE: This includes TYPE=FS and TYPE=SWAP |
| 65 | 75 |
TYPE_SOURCE="file" |
| ... | ... | |
| 78 | 88 |
READONLY="" |
| 79 | 89 |
fi |
| 80 | 90 | |
| 81 |
ATTACH_FILE="$SOURCE.attach" |
|
| 82 | 91 | |
| 83 | 92 |
cat <<EOF > $ATTACH_FILE |
| 84 | 93 |
<disk type='$TYPE_XML' device='$DEVICE'> |
| 85 | 94 |
<driver name='qemu' type='$DRIVER' $CACHE/> |
| 86 |
<source $TYPE_SOURCE='$SOURCE'/>
|
|
| 95 |
<source $TYPE_SOURCE=$SOURCE/>
|
|
| 87 | 96 |
<target dev='$TARGET'/> |
| 88 | 97 |
$READONLY |
| 89 | 98 |
</disk> |