def postverifytrans_hook(conduit): """ Update product ID certificates. """ # register rpm name for yum history recording # yum on 5.7 doesn't have this method, so check for it if hasattr(conduit, 'registerPackageName'): conduit.registerPackageName("subscription-manager") try: init_dep_injection() except ImportError as e: conduit.error(3, str(e)) return logutil.init_logger_for_yum() # If a tool (it's, e.g., Anaconda and Mock) manages a chroot via # 'yum --installroot', we must update certificates in that directory. chroot(conduit.getConf().installroot) try: pm = YumProductManager(conduit._base) pm.update_all() conduit.info(3, 'Installed products updated.') except Exception as e: conduit.error(3, str(e))
def config_hook(conduit): """ This is the first hook of this yum plugin that is triggered by yum. So we do initialization of all stuff that is necessary by other hooks :param conduit: Reference on conduit object used by yum plugin API :return: None """ logutil.init_logger_for_yum() init_dep_injection() if hasattr(conduit, 'registerPackageName'): conduit.registerPackageName("subscription-manager")
def _config(self): """ update """ logutil.init_logger_for_yum() init_dep_injection() chroot(self.base.conf.installroot) cfg = config.get_config_parser() cache_only = not bool(cfg.get_int('rhsm', 'full_refresh_on_yum')) try: if os.getuid() == 0: # Try to update entitlement certificates and redhat.repo file self._update(cache_only) else: logger.info(_('Not root, Subscription Management repositories not updated')) self._warn_or_give_usage_message() self._warn_expired() except Exception as e: log.error(str(e))
def transaction(self): """ Update product ID certificates. """ if self.base.transaction is None or len(self.base.transaction) == 0: # nothing to update after empty transaction return try: init_dep_injection() except ImportError as e: log.error(str(e)) return logutil.init_logger_for_yum() chroot(self.base.conf.installroot) try: pm = DnfProductManager(self.base) pm.update_all(self._enabled_repos) logger.info(_('Installed products updated.')) except Exception as e: log.error(str(e))
def test_init_logger_for_yum(self): logutil.init_logger_for_yum() sm_logger = logging.getLogger("subscription_manager") rhsm_logger = logging.getLogger("rhsm-app") self.assertFalse(sm_logger.propagate) self.assertFalse(rhsm_logger.propagate)