Skip to content

Commit a0cb6e8

Browse files
committed
Update image definition for OpenNebula 4.10
1 parent 1a6d5d1 commit a0cb6e8

3 files changed

Lines changed: 166 additions & 87 deletions

File tree

oca/image.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# -*- coding: UTF-8 -*-
2-
from pool import Pool, PoolElement, Template
2+
from pool import Pool, PoolElement, Template, extractString
33

44

55
class Image(PoolElement):
@@ -18,16 +18,26 @@ class Image(PoolElement):
1818
'id' : int,
1919
'uid' : int,
2020
'gid' : int,
21-
'uname' : str,
22-
'gname' : str,
23-
'name' : str,
21+
'uname' : extractString,
22+
'gname' : extractString,
23+
'name' : extractString,
24+
#'permissions' : ???,
2425
'type' : int,
25-
'public' : int,
26+
'disk_type' : int,
2627
'persistent' : int,
2728
'regtime' : int,
28-
'source' : str,
29+
'source' : extractString,
30+
'path' : extractString,
31+
'fstype' : extractString,
32+
'size' : int,
2933
'state' : int,
3034
'running_vms' : int,
35+
'cloning_ops' : int,
36+
'cloning_id' : int,
37+
'datastore_id': int,
38+
'datastore' : extractString,
39+
'vm_ids' : ["VMS", lambda vms: map(lambda vm_id: int(vm_id.text), vms)],
40+
'clone_ids' : ["CLONES", lambda clones: map(lambda clone_id: int(clone_id.text), clones)],
3141
'template' : ['TEMPLATE', Template],
3242
}
3343

oca/tests/fixtures/image.xml

Lines changed: 36 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,38 @@
11
<IMAGE>
2-
<ID>1</ID>
3-
<UID>0</UID>
4-
<GID>0</GID>
5-
<UNAME>oneadmin</UNAME>
6-
<GNAME>oneadmin</GNAME>
7-
<NAME>MATLAB install CD</NAME>
8-
<TYPE>1</TYPE>
9-
<PUBLIC>0</PUBLIC>
10-
<PERSISTENT>0</PERSISTENT>
11-
<REGTIME>1287503867</REGTIME>
12-
<SOURCE>/home/cmartin/trabajo/one.git/one/install/var//images/21df7c80e4357f20dc737e3f60dd7048ddc6a510</SOURCE>
13-
<STATE>3</STATE>
14-
<RUNNING_VMS>0</RUNNING_VMS>
15-
<TEMPLATE><DESCRIPTION><![CDATA[Contains the MATLAB installation files. Mount it to install MATLAB on new OS images.]]></DESCRIPTION><DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX><NAME><![CDATA[MATLAB install CD]]></NAME><PATH><![CDATA[/home/non_existent/images/matlab.iso]]></PATH><TYPE><![CDATA[CDROM]]></TYPE></TEMPLATE>
2+
<ID>1</ID>
3+
<UID>0</UID>
4+
<GID>0</GID>
5+
<UNAME>oneadmin</UNAME>
6+
<GNAME>oneadmin</GNAME>
7+
<NAME>MATLAB install CD</NAME>
8+
<PERMISSIONS>
9+
<OWNER_U>1</OWNER_U>
10+
<OWNER_M>1</OWNER_M>
11+
<OWNER_A>0</OWNER_A>
12+
<GROUP_U>0</GROUP_U>
13+
<GROUP_M>0</GROUP_M>
14+
<GROUP_A>0</GROUP_A>
15+
<OTHER_U>0</OTHER_U>
16+
<OTHER_M>0</OTHER_M>
17+
<OTHER_A>0</OTHER_A>
18+
</PERMISSIONS>
19+
<TYPE>2</TYPE>
20+
<DISK_TYPE>0</DISK_TYPE>
21+
<PERSISTENT>0</PERSISTENT>
22+
<REGTIME>1435086617</REGTIME>
23+
<SOURCE><![CDATA[/var/lib/one//datastores/1/4f3591cfe3a4e0a00789087a3f92c433]]></SOURCE>
24+
<PATH><![CDATA[]]></PATH>
25+
<FSTYPE><![CDATA[ext2]]></FSTYPE>
26+
<SIZE>400</SIZE>
27+
<STATE>1</STATE>
28+
<RUNNING_VMS>0</RUNNING_VMS>
29+
<CLONING_OPS>0</CLONING_OPS>
30+
<CLONING_ID>-1</CLONING_ID>
31+
<DATASTORE_ID>1</DATASTORE_ID>
32+
<DATASTORE>default</DATASTORE>
33+
<VMS/>
34+
<CLONES/>
35+
<TEMPLATE>
36+
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
37+
</TEMPLATE>
1638
</IMAGE>

oca/tests/fixtures/imagepool.xml

Lines changed: 114 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,69 +1,116 @@
11
<IMAGE_POOL>
2-
<IMAGE>
3-
<ID>1</ID>
4-
<UID>0</UID>
5-
<GID>0</GID>
6-
<UNAME>oneadmin</UNAME>
7-
<GNAME>oneadmin</GNAME>
8-
<USERNAME>oneadmin</USERNAME>
9-
<NAME>MATLAB install CD</NAME>
10-
<TYPE>1</TYPE>
11-
<PUBLIC>0</PUBLIC>
12-
<PERSISTENT>0</PERSISTENT>
13-
<REGTIME>1287503867</REGTIME>
14-
<SOURCE>/home/cmartin/trabajo/one.git/one/install/var//images/21df7c80e4357f20dc737e3f60dd7048ddc6a510</SOURCE>
15-
<STATE>3</STATE>
16-
<RUNNING_VMS>0</RUNNING_VMS>
17-
<TEMPLATE>
18-
<DESCRIPTION><![CDATA[Contains the MATLAB installation files. Mount it to install MATLAB on new OS images.]]></DESCRIPTION>
19-
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
20-
<NAME><![CDATA[MATLAB install CD]]></NAME>
21-
<PATH><![CDATA[/home/non_existent/images/matlab.iso]]></PATH>
22-
<TYPE><![CDATA[CDROM]]></TYPE>
23-
</TEMPLATE>
24-
</IMAGE>
25-
<IMAGE>
26-
<ID>4</ID>
27-
<UID>0</UID>
28-
<GID>0</GID>
29-
<UNAME>oneadmin</UNAME>
30-
<GNAME>oneadmin</GNAME>
31-
<USERNAME>oneadmin</USERNAME>
32-
<NAME>A</NAME>
33-
<TYPE>0</TYPE>
34-
<PUBLIC>0</PUBLIC>
35-
<PERSISTENT>0</PERSISTENT>
36-
<REGTIME>1287503968</REGTIME>
37-
<SOURCE>/home/cmartin/trabajo/one.git/one/install/var//images/259456c9ae128117780f6866e8df8d1010f13f76</SOURCE>
38-
<STATE>3</STATE>
39-
<RUNNING_VMS>0</RUNNING_VMS>
40-
<TEMPLATE>
41-
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
42-
<NAME><![CDATA[A]]></NAME>
43-
<PATH><![CDATA[/home/carlos/trabajo/ttylinux/ttylinux.img]]></PATH>
44-
</TEMPLATE>
45-
</IMAGE>
46-
<IMAGE>
47-
<ID>5</ID>
48-
<UID>0</UID>
49-
<GID>0</GID>
50-
<UNAME>oneadmin</UNAME>
51-
<GNAME>oneadmin</GNAME>
52-
<USERNAME>oneadmin</USERNAME>
53-
<NAME>test_07</NAME>
54-
<TYPE>2</TYPE>
55-
<PUBLIC>0</PUBLIC>
56-
<PERSISTENT>0</PERSISTENT>
57-
<REGTIME>1287503984</REGTIME>
58-
<SOURCE>/home/cmartin/trabajo/one.git/one/install/var//images/12db97fabdd3eed843eca5edb1f5845650e52af6</SOURCE>
59-
<STATE>1</STATE>
60-
<RUNNING_VMS>0</RUNNING_VMS>
61-
<TEMPLATE>
62-
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
63-
<FSTYPE><![CDATA[ext3]]></FSTYPE>
64-
<NAME><![CDATA[test_07]]></NAME>
65-
<SIZE><![CDATA[40]]></SIZE>
66-
<TYPE><![CDATA[DATABLOCK]]></TYPE>
67-
</TEMPLATE>
68-
</IMAGE>
2+
<IMAGE>
3+
<ID>0</ID>
4+
<UID>0</UID>
5+
<GID>0</GID>
6+
<UNAME>oneadmin</UNAME>
7+
<GNAME>oneadmin</GNAME>
8+
<NAME>data</NAME>
9+
<PERMISSIONS>
10+
<OWNER_U>1</OWNER_U>
11+
<OWNER_M>1</OWNER_M>
12+
<OWNER_A>0</OWNER_A>
13+
<GROUP_U>0</GROUP_U>
14+
<GROUP_M>0</GROUP_M>
15+
<GROUP_A>0</GROUP_A>
16+
<OTHER_U>0</OTHER_U>
17+
<OTHER_M>0</OTHER_M>
18+
<OTHER_A>0</OTHER_A>
19+
</PERMISSIONS>
20+
<TYPE>2</TYPE>
21+
<DISK_TYPE>0</DISK_TYPE>
22+
<PERSISTENT>0</PERSISTENT>
23+
<REGTIME>1435086617</REGTIME>
24+
<SOURCE><![CDATA[/var/lib/one//datastores/1/4f3591cfe3a4e0a00789087a3f92c433]]></SOURCE>
25+
<PATH><![CDATA[]]></PATH>
26+
<FSTYPE><![CDATA[ext2]]></FSTYPE>
27+
<SIZE>400</SIZE>
28+
<STATE>1</STATE>
29+
<RUNNING_VMS>0</RUNNING_VMS>
30+
<CLONING_OPS>0</CLONING_OPS>
31+
<CLONING_ID>-1</CLONING_ID>
32+
<DATASTORE_ID>1</DATASTORE_ID>
33+
<DATASTORE>default</DATASTORE>
34+
<VMS/>
35+
<CLONES/>
36+
<TEMPLATE>
37+
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
38+
</TEMPLATE>
39+
</IMAGE>
40+
<IMAGE>
41+
<ID>1</ID>
42+
<UID>0</UID>
43+
<GID>0</GID>
44+
<UNAME>oneadmin</UNAME>
45+
<GNAME>oneadmin</GNAME>
46+
<NAME>data2</NAME>
47+
<PERMISSIONS>
48+
<OWNER_U>1</OWNER_U>
49+
<OWNER_M>1</OWNER_M>
50+
<OWNER_A>0</OWNER_A>
51+
<GROUP_U>0</GROUP_U>
52+
<GROUP_M>0</GROUP_M>
53+
<GROUP_A>0</GROUP_A>
54+
<OTHER_U>0</OTHER_U>
55+
<OTHER_M>0</OTHER_M>
56+
<OTHER_A>0</OTHER_A>
57+
</PERMISSIONS>
58+
<TYPE>2</TYPE>
59+
<DISK_TYPE>0</DISK_TYPE>
60+
<PERSISTENT>0</PERSISTENT>
61+
<REGTIME>1435086683</REGTIME>
62+
<SOURCE><![CDATA[/var/lib/one//datastores/1/bc928294936ce873228150af2052ebc3]]></SOURCE>
63+
<PATH><![CDATA[]]></PATH>
64+
<FSTYPE><![CDATA[ext2]]></FSTYPE>
65+
<SIZE>200</SIZE>
66+
<STATE>1</STATE>
67+
<RUNNING_VMS>0</RUNNING_VMS>
68+
<CLONING_OPS>0</CLONING_OPS>
69+
<CLONING_ID>-1</CLONING_ID>
70+
<DATASTORE_ID>1</DATASTORE_ID>
71+
<DATASTORE>default</DATASTORE>
72+
<VMS/>
73+
<CLONES/>
74+
<TEMPLATE>
75+
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
76+
</TEMPLATE>
77+
</IMAGE>
78+
<IMAGE>
79+
<ID>2</ID>
80+
<UID>0</UID>
81+
<GID>0</GID>
82+
<UNAME>oneadmin</UNAME>
83+
<GNAME>oneadmin</GNAME>
84+
<NAME>data3</NAME>
85+
<PERMISSIONS>
86+
<OWNER_U>1</OWNER_U>
87+
<OWNER_M>1</OWNER_M>
88+
<OWNER_A>0</OWNER_A>
89+
<GROUP_U>0</GROUP_U>
90+
<GROUP_M>0</GROUP_M>
91+
<GROUP_A>0</GROUP_A>
92+
<OTHER_U>0</OTHER_U>
93+
<OTHER_M>0</OTHER_M>
94+
<OTHER_A>0</OTHER_A>
95+
</PERMISSIONS>
96+
<TYPE>2</TYPE>
97+
<DISK_TYPE>0</DISK_TYPE>
98+
<PERSISTENT>0</PERSISTENT>
99+
<REGTIME>1435086941</REGTIME>
100+
<SOURCE><![CDATA[/var/lib/one//datastores/1/325e9c37fd02ae842a342ed5e464d0da]]></SOURCE>
101+
<PATH><![CDATA[]]></PATH>
102+
<FSTYPE><![CDATA[ext2]]></FSTYPE>
103+
<SIZE>200</SIZE>
104+
<STATE>1</STATE>
105+
<RUNNING_VMS>0</RUNNING_VMS>
106+
<CLONING_OPS>0</CLONING_OPS>
107+
<CLONING_ID>-1</CLONING_ID>
108+
<DATASTORE_ID>1</DATASTORE_ID>
109+
<DATASTORE>default</DATASTORE>
110+
<VMS/>
111+
<CLONES/>
112+
<TEMPLATE>
113+
<DEV_PREFIX><![CDATA[hd]]></DEV_PREFIX>
114+
</TEMPLATE>
115+
</IMAGE>
69116
</IMAGE_POOL>

0 commit comments

Comments
 (0)