Upgrade and downgrade in package update operations
First Claim
1. A method, comprising:
- receiving a request to perform a distribution upgrade from an installed distribution comprising a first set of software packages installed on a client machine to a target distribution comprising a second set of software packages;
retrieving a version reconciliation data having stored thereon a most-current version of each software package in the second set of software packages;
determining a version of each package in the second set of software packages;
determining a most-current version for each package in the second set of software packages in view of the retrieved version reconciliation data;
determining whether the most-current version of each package in the second set of software packages is a match for an upgrade for the version in the second set of packages;
for each package that matches the most-current version, upgrading, by a processor executing a package manager, the matched package in the first set of packages to the version of the corresponding package in the second set of packages; and
for each package that does not match the most-current version,retrieving the most-current version of the unmatched package from a package server; and
upgrading, by the processor executing the package manager, unmatched package in the first set of packages to the retrieved most-current version.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments relate to systems and methods for automatic upgrade and downgrade in package update operations. A physical or virtual client machine can host an installed software distribution including a set of installed software packages, such as an operating system, application, and/or other software. A package manager on the client can manage the set of installed packages, and report the installed distribution including version and component packages to one or more package servers. When a distribution upgrade is initiated, the package manager and/or other distribution logic can analyze the target distribution, to determine whether each package in the target distribution represents the most-current version of each component package. Packages which represent the most-current can be installed. Packages which do not represent the most-current version, e.g. due to slippage in vendor updates or versions, can be substituted with a most-current version automatically retrieved from a software repository or other source.
38 Citations
20 Claims
-
1. A method, comprising:
-
receiving a request to perform a distribution upgrade from an installed distribution comprising a first set of software packages installed on a client machine to a target distribution comprising a second set of software packages; retrieving a version reconciliation data having stored thereon a most-current version of each software package in the second set of software packages; determining a version of each package in the second set of software packages; determining a most-current version for each package in the second set of software packages in view of the retrieved version reconciliation data; determining whether the most-current version of each package in the second set of software packages is a match for an upgrade for the version in the second set of packages; for each package that matches the most-current version, upgrading, by a processor executing a package manager, the matched package in the first set of packages to the version of the corresponding package in the second set of packages; and for each package that does not match the most-current version, retrieving the most-current version of the unmatched package from a package server; and upgrading, by the processor executing the package manager, unmatched package in the first set of packages to the retrieved most-current version. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A system, comprising:
-
an interface to a data store to store a set of software distributions; and a processor to communicate with the data store via the interface, wherein the processor executes instructions to; receive a request to perform a distribution upgrade from an installed distribution comprising a first set of software packages installed on the client machine to a target distribution comprising a second set of software packages stored in the data store, retrieve a version reconciliation data having stored thereon a most-current version of each software package in the second set of software packages, determine a version of each package in the second set of software packages, determine a most-current version for each package in the second set of software packages in view of the retrieved version reconciliation data, determine whether the most-current version of each package in the second set of software packages is a match for an upgrade for the version in the second set of packages, for each package that matches the most-current version, upgrade the matched package in the first set of packages to the version of the corresponding package in the second set of packages, and for each package that does not match the most-current version, retrieve the most-current version of the unmatched package from a package server; and upgrade unmatched package in the first set of packages to the retrieved most-current version. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20)
-
Specification