Revision 54f834df doc/design-ovf-support.rst
b/doc/design-ovf-support.rst | ||
---|---|---|
454 | 454 |
|
455 | 455 |
Typical workflow for the import is very simple: |
456 | 456 |
|
457 |
- read the ``.ovf`` file info memory
|
|
457 |
- read the ``.ovf`` file into memory
|
|
458 | 458 |
- verify manifest |
459 | 459 |
- parse each element of the configuration file: name, disk template, |
460 | 460 |
hypervisor, operating system, backend parameters, network and disks |
... | ... | |
468 | 468 |
|
469 | 469 |
- save gathered information in ``config.ini`` file |
470 | 470 |
|
471 |
Export |
|
472 |
------ |
|
473 |
|
|
474 |
Similar to import, export functionality also uses two classes - |
|
475 |
OVFWriter and OVFExporter. |
|
476 |
|
|
477 |
OVFWriter class produces XML output based on the information given. Its |
|
478 |
sole role is to separate the creation of ``.ovf`` file content. |
|
479 |
|
|
480 |
OVFExporter class gathers information from ``config.ini`` file or |
|
481 |
command line and performs necessary operations like disk conversion, disk |
|
482 |
compression, manifest creation and OVA package creation. |
|
483 |
|
|
484 |
Typical workflow for the export is even simpler, than for the import: |
|
485 |
|
|
486 |
- read the ``config.ini`` file into memory |
|
487 |
- gather information about certain parts of the instance, convert and |
|
488 |
compress disks if desired |
|
489 |
- save each of these elements as a fragment of XML tree |
|
490 |
- save the XML tree as ``.ovf`` file |
|
491 |
- create manifest file and fill it with appropriate checksums |
|
492 |
- if ``--ova`` option was chosen, pack the results into ``.ova`` tarfile |
|
493 |
|
|
471 | 494 |
|
472 | 495 |
.. vim: set textwidth=72 : |
473 | 496 |
.. Local Variables: |
Also available in: Unified diff