From: Ales Kozumplik ales@redhat.com
--- pyanaconda/packaging/dnfpayload.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index 585d543..01584a1 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -121,6 +121,7 @@ class DNFPayload(packaging.PackagePayload):
map(self._install_package, self._required_pkgs) map(self._select_group, self._required_groups) + self._select_kernel_package()
def _bump_tx_id(self): if self.txID is None: @@ -181,6 +182,19 @@ class DNFPayload(packaging.PackagePayload): types.add('optional') self._base.select_group(grp, types)
+ def _select_kernel_package(self): + kernels = self.kernelPackages + for kernel in kernels: + try: + self._install_package(kernel) + except packaging.NoSuchPackage: + log.info('kernel: no such package %s', kernel) + else: + log.info('kernel: selected %s', kernel) + break + else: + log.error('kernel: failed to select a kernel from %s', kernels) + def _sync_metadata(self, dnf_repo): try: dnf_repo.load()
From: Ales Kozumplik ales@redhat.com
--- pyanaconda/packaging/dnfpayload.py | 1 + 1 file changed, 1 insertion(+)
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index 01584a1..a19d139 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -163,6 +163,7 @@ class DNFPayload(packaging.PackagePayload): if self.data.packages.handleMissing == constants.KS_MISSING_IGNORE: return
+ log.error('Missed: %r', exn) if errors.errorHandler.cb(exn, str(exn)) == errors.ERROR_RAISE: # The progress bar polls kind of slowly, thus installation could # still continue for a bit before the quit message is processed.
From: Ales Kozumplik ales@redhat.com
--- pyanaconda/packaging/dnfpayload.py | 1 + 1 file changed, 1 insertion(+)
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index a19d139..a9bd59e 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -326,6 +326,7 @@ class DNFPayload(packaging.PackagePayload):
pkgs_to_download = self._base.transaction.install_set log.info('Downloading pacakges.') + progressQ.send_message(_('Downloading packages')) self._base.download_packages(pkgs_to_download) log.info('Downloading packages finished.')
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index 585d543..01584a1 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -121,6 +121,7 @@ class DNFPayload(packaging.PackagePayload):
map(self._install_package, self._required_pkgs) map(self._select_group, self._required_groups)
self._select_kernel_package()def _bump_tx_id(self): if self.txID is None:
@@ -181,6 +182,19 @@ class DNFPayload(packaging.PackagePayload): types.add('optional') self._base.select_group(grp, types)
- def _select_kernel_package(self):
kernels = self.kernelPackagesfor kernel in kernels:try:self._install_package(kernel)except packaging.NoSuchPackage:log.info('kernel: no such package %s', kernel)else:log.info('kernel: selected %s', kernel)breakelse:log.error('kernel: failed to select a kernel from %s', kernels)- def _sync_metadata(self, dnf_repo): try: dnf_repo.load()
For parallelism, could you please also rename selectKernelPackage in yumpayload.py to _select_kernel_package? We don't ever call that outside of the class, so there's no need for it to have the public name.
- Chris
On 09/12/2013 05:20 PM, Chris Lumens wrote:
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index 585d543..01584a1 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -121,6 +121,7 @@ class DNFPayload(packaging.PackagePayload):
map(self._install_package, self._required_pkgs) map(self._select_group, self._required_groups)
self._select_kernel_package() def _bump_tx_id(self): if self.txID is None:@@ -181,6 +182,19 @@ class DNFPayload(packaging.PackagePayload): types.add('optional') self._base.select_group(grp, types)
- def _select_kernel_package(self):
kernels = self.kernelPackagesfor kernel in kernels:try:self._install_package(kernel)except packaging.NoSuchPackage:log.info('kernel: no such package %s', kernel)else:log.info('kernel: selected %s', kernel)breakelse:log.error('kernel: failed to select a kernel from %s', kernels)def _sync_metadata(self, dnf_repo): try: dnf_repo.load()For parallelism, could you please also rename selectKernelPackage in yumpayload.py to _select_kernel_package? We don't ever call that outside of the class, so there's no need for it to have the public name.
Hm, OK.
On Thu, 2013-09-12 at 15:06 +0200, akozumpl@redhat.com wrote:
From: Ales Kozumplik ales@redhat.com
pyanaconda/packaging/dnfpayload.py | 14 ++++++++++++++ 1 file changed, 14 insertions(+)
diff --git a/pyanaconda/packaging/dnfpayload.py b/pyanaconda/packaging/dnfpayload.py index 585d543..01584a1 100644 --- a/pyanaconda/packaging/dnfpayload.py +++ b/pyanaconda/packaging/dnfpayload.py @@ -121,6 +121,7 @@ class DNFPayload(packaging.PackagePayload):
map(self._install_package, self._required_pkgs) map(self._select_group, self._required_groups)
self._select_kernel_package()def _bump_tx_id(self): if self.txID is None:
@@ -181,6 +182,19 @@ class DNFPayload(packaging.PackagePayload): types.add('optional') self._base.select_group(grp, types)
- def _select_kernel_package(self):
kernels = self.kernelPackagesfor kernel in kernels:try:self._install_package(kernel)except packaging.NoSuchPackage:log.info('kernel: no such package %s', kernel)else:log.info('kernel: selected %s', kernel)breakelse:log.error('kernel: failed to select a kernel from %s', kernels)- def _sync_metadata(self, dnf_repo): try: dnf_repo.load()
These all look good to me.
anaconda-patches@lists.fedorahosted.org