Systems and methods for updating software appliances
First Claim
1. A method, comprising:
- instantiating, by a processor of a client device, a first version of a software appliance;
receiving, from a user of the software appliance, user-inputted data that is used by the first version of the software appliance during operation;
capturing an image of the first version of the software appliance comprising an initial configuration state;
aggregating one or more changes to the initial configuration state to produce a current configuration state of the first version of the software appliance;
registering, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance;
instantiating, by the processor of the client device, a second version of the software appliance; and
exporting, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance to the second version of the software appliance.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments relate to systems and methods for updating software appliances. A client can host a software appliance, such a Linux™ software appliance, which a user wishes to update to a newer version. Instead of performing an in-place update by installing a new version that deletes the configuration state and/or user data of the existing version of the appliance, an export module takes an image of an initial appliance installation and then registers further changes to the configuration state and/or user data over time. When the user chooses to update the software appliance, the new version can be downloaded to execute an installation. The export module aggregates all changes to the original installation image as well as user data, and delivers the complete current configuration state and/or complete current user data to the new version of the appliance to instantiate the new version.
-
Citations
23 Claims
-
1. A method, comprising:
-
instantiating, by a processor of a client device, a first version of a software appliance; receiving, from a user of the software appliance, user-inputted data that is used by the first version of the software appliance during operation; capturing an image of the first version of the software appliance comprising an initial configuration state; aggregating one or more changes to the initial configuration state to produce a current configuration state of the first version of the software appliance; registering, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance; instantiating, by the processor of the client device, a second version of the software appliance; and exporting, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance to the second version of the software appliance. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system, comprising:
-
a memory comprising instructions; a processor, operably connected to the memory, the processor configured to execute the instructions comprising; receiving, from a user of the software appliance, user-inputted data that is used by a first version of the software appliance during operation, capturing an image of the first version of the software appliance comprising an initial configuration state; aggregating one or more changes to the initial configuration state to produce a current configuration state of the first version of the software appliance; registering the current configuration state and the user-inputted data of the first version of software appliance, and exporting the complete current configuration state and the user-inputted data of the first version of the software appliance to a second version of the software appliance upon instantiation of the second version of the software appliance. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium, the computer-readable medium being readable to execute a method comprising:
-
instantiating, by a processor of a client device, a first version of a software appliance; receiving, from a user of the software appliance, user-inputted data that is used by the first version of the software appliance during operation; capturing an image of the first version of the software appliance comprising an initial configuration state; aggregating one or more changes to the initial configuration state to produce a current configuration state of the first version of the software appliance; registering, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance; instantiating, by the processor of the client device, a second version of the software appliance; and exporting, by the processor of the client device, the current configuration state and the user-inputted data of the first version of the software appliance to the second version of the software appliance. - View Dependent Claims (20, 21, 22, 23)
-
Specification