System and method for building virtual appliances using a repository metadata server and a dependency resolution service
First Claim
1. A method for building a virtual appliance using a repository metadata server and a dependency resolution service, comprising:
- retrieving first metadata from a first origin repository, wherein the first metadata includes metadata describing the first origin repository and further includes metadata describing first software packages in the first origin repository;
retrieving second metadata from a second origin repository, wherein the second metadata includes metadata describing the second origin repository and further includes metadata describing second software packages in the second origin repository;
downloading the first software packages and the second software packages to one or more cached repositories, wherein the repository metadata server is configured to enable a user to select software packages from the first software packages and the second software packages for a virtual appliance;
building a first resolution graph from the metadata describing the first software packages, wherein the first resolution graph specifies dependencies between the first software packages in the first origin repository;
building a second resolution graph from the metadata describing the second software packages in the second origin repository, wherein the second resolution graph specifies dependencies between the second software packages;
combining the first resolution graph and the second resolution graph to obtain pooled resolution data;
receiving a selection for a first software package from the first software packages and a second software package from the second software packages;
resolving dependencies between the first software package and the second software package by analyzing the pooled resolution data; and
building an image for the virtual appliance comprising the first software package and the second software package based on the dependencies resolved by the dependency resolution service.
3 Assignments
0 Petitions
Accused Products
Abstract
A system and method for building virtual appliances using a repository metadata server and a dependency resolution service is provided. In particular, a hosted web service may provide a collaborative environment for managing origin repositories and software dependencies, whereby remote clients may follow a simple and repeatable process for creating virtual appliances. For example, the repository metadata server may cache and parse metadata associated with an origin repository, download software from the origin repository, and generate resolution data that can be used by the dependency resolution service. The dependency resolution service may then use the resolution data to resolve dependencies for a package selected for an appliance, wherein the dependencies may include packages that are required, recommended, suggested, banned, or otherwise a dependency for the selected package.
-
Citations
17 Claims
-
1. A method for building a virtual appliance using a repository metadata server and a dependency resolution service, comprising:
-
retrieving first metadata from a first origin repository, wherein the first metadata includes metadata describing the first origin repository and further includes metadata describing first software packages in the first origin repository; retrieving second metadata from a second origin repository, wherein the second metadata includes metadata describing the second origin repository and further includes metadata describing second software packages in the second origin repository; downloading the first software packages and the second software packages to one or more cached repositories, wherein the repository metadata server is configured to enable a user to select software packages from the first software packages and the second software packages for a virtual appliance; building a first resolution graph from the metadata describing the first software packages, wherein the first resolution graph specifies dependencies between the first software packages in the first origin repository; building a second resolution graph from the metadata describing the second software packages in the second origin repository, wherein the second resolution graph specifies dependencies between the second software packages; combining the first resolution graph and the second resolution graph to obtain pooled resolution data; receiving a selection for a first software package from the first software packages and a second software package from the second software packages; resolving dependencies between the first software package and the second software package by analyzing the pooled resolution data; and building an image for the virtual appliance comprising the first software package and the second software package based on the dependencies resolved by the dependency resolution service. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for building a virtual appliance, comprising:
-
a processor a repository metadata server, executing on the processor, configured to; retrieve first metadata from a first origin repository, wherein the first metadata includes metadata describing the first origin repository and further includes metadata describing first software packages in the first origin repository; retrieve second metadata from a second origin repository, wherein the second metadata includes metadata describing the second origin repository and further includes metadata describing second software packages in the second origin repository; download the first software packages and the second software packages to one or more cached repositories; enable a user to select the software contained in the origin repositories in relation to a virtual appliance; and build a first resolution graph from the metadata describing the first software packages, wherein the first resolution graph specifies dependencies between the first software packages in the first origin repository; build a second resolution graph from the metadata describing the second software packages in the second origin repository, wherein the second resolution graph specifies dependencies between the second software packages; combine the first resolution graph and the second resolution graph to obtain pooled resolution data and receive a selection for a first software package from the first software packages and a second software package from the second software packages; a dependency resolution service configured to resolve dependencies between the first software package and the second software package by analyzing the pooled resolution data; and a development environment configured to build an image for the virtual appliance comprising the first software package and the second software package based on the dependencies resolved by the dependency resolution service. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
Specification