glennmatthews / cot

Common OVF Tool
MIT License
90 stars 23 forks source link

Does COT support <ovf:VirtualSystemCollection></ovf:VirtualSystemCollection> #71

Closed zhangxue6 closed 5 years ago

zhangxue6 commented 6 years ago

Hi, Glenn, I am trying COT with my sample OVF template but ran into the following errors. Would you please have a look? Thanks. Richard,

[root@myhost ~]# cot info --brief sample.ovf Traceback (most recent call last): File "/usr/bin/cot", line 11, in load_entry_point('cot==2.0.5', 'console_scripts', 'cot')() File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 717, in main File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 324, in run File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 601, in main File "build/bdist.linux-x86_64/egg/COT/commands/info.py", line 102, in run File "build/bdist.linux-x86_64/egg/COT/vm_description/vm_description.py", line 164, in factory File "build/bdist.linux-x86_64/egg/COT/vm_description/ovf/ovf.py", line 232, in init File "build/bdist.linux-x86_64/egg/COT/xml_file.py", line 161, in find_child KeyError: 'Mandatory element not found under '

<ovf:VirtualSystemCollection ovf:id="vms">
    <ovf:VirtualSystem ovf:id="myVM-1">
...
    </ovf:VirtualSystem>
    <ovf:VirtualSystem ovf:id="myVM-2">
...
    </ovf:VirtualSystem>
</ovf:VirtualSystemCollection>

If I remove </ovf:VirtualSystemCollection>, the following error is reported. [root@myhost ~]# cot info --brief sample1.ovf Traceback (most recent call last): File "/usr/bin/cot", line 11, in load_entry_point('cot==2.0.5', 'console_scripts', 'cot')() File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 717, in main File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 324, in run File "build/bdist.linux-x86_64/egg/COT/ui/cli.py", line 601, in main File "build/bdist.linux-x86_64/egg/COT/commands/info.py", line 102, in run File "build/bdist.linux-x86_64/egg/COT/vm_description/vm_description.py", line 164, in factory File "build/bdist.linux-x86_64/egg/COT/vm_description/ovf/ovf.py", line 232, in init File "build/bdist.linux-x86_64/egg/COT/xml_file.py", line 156, in find_child LookupError: Found multiple matching children (each with attributes '{}') under :

glennmatthews commented 6 years ago

Hi Richard,

COT doesn't yet support VirtualSystemCollection as yours is the first case I've seen in the wild of anyone actually using this feature of the OVF standard. :smile: It's definitely something that could be added but will be non-trivial to implement. Could you provide any more specifics about the use case you are targeting with this OVF and any specific COT features you need to use with it? Thanks!