Patent Document ID: 9495181
Application ID: 14363704
Patent Flag: 1

Claim One:
1. A method for creating a virtual appliance comprising: receiving, by a certification platform executing on a data processing system, input of an unmodified virtual appliance and a list of target models; attempting, by the certification platform, to install the unmodified virtual appliance on each target model; adding, by the certification platform, each target model on which the unmodified virtual appliance is successfully installed to a list of validated target models; creating, by an image building and composition tool executing on the data processing system, a modified virtual appliance with a disk archive file, a conversion tool, and the list of validated target models based on the input; and deploying, by the image building and composition tool, the modified virtual appliance on each target model in the list of target models, wherein the modified virtual appliance is configured to boot on the disk archive file containing a mini operating system working on all validated target models; wherein responsive to a deployment of the modified virtual appliance being triggered on a current target model, the mini operating system is booted on the current target model; wherein the mini operating system determines a model of the current target model on which the mini operating system is running, and responsive to determining the current target model is a validated target model, applies modifications to an operating system of the virtual appliance in accordance with the current target model to form a portable virtual appliance running on the current target model; wherein a pre-operating system kernel is loaded from the disk archive file taking control and checking a master boot record to determine a type of operating system of the given target model; wherein deploying the modified virtual appliance on a given target model comprises creating the given target model, binding the disk archive file of the modified virtual appliance to the given target model and booting on the disk archive file of the modified virtual appliance.