def install_ind_package(progress, package): status = UpdaterStatus.get_instance() # install an independent package. previous_state = status.state # Allow installing only if the updater is in certain safe states. if status.state not in [UpdaterStatus.NO_UPDATES, UpdaterStatus.UPDATES_AVAILABLE, UpdaterStatus.UPDATES_INSTALLED]: msg = "The install is already running" logger.warn(msg) progress.abort(msg) return False if package not in status.updatable_independent_packages: msg = "tried to install non-independent package {} using update_ind_pkg".format(package) logger.warn(msg) progress.abort(msg) return False status.state = UpdaterStatus.INSTALLING_INDEPENDENT status.save() update_sources_phase = 'updating-sources' installing_idp_phase = 'installing-idp-package' progress.split( Phase( update_sources_phase, _("Updating apt sources"), 10 ), Phase( installing_idp_phase, _("Installing independent package"), 90 ) ) progress.start(update_sources_phase) apt_handle.update(progress) progress.start(installing_idp_phase) apt_handle.upgrade(package, progress) status.state = previous_state status.last_update = int(time.time()) # always check independent packages as NONE as urgent updates to # these packages are dealt with by the main updater status.updatable_independent_packages = get_ind_packages(Priority.NONE) status.is_scheduled = False status.save() progress.finish(_("Update completed")) return True
def migrate_repository(apt_file, old_repo, new_repo): try: sed(old_repo, new_repo, apt_file, use_regexp=False) except IOError as exc: logger.warn("Changing repository URL failed ({})".format(exc)) return # TODO: track progress of this apt_handle.clear_cache() apt_handle.update(DummyProgress())
def migrate_repository(apt_file, old_repo, new_repo): try: sed(old_repo, new_repo, apt_file, use_regexp=False) except IOError as exc: logger.warn("Changing repository URL failed ({})".format(exc)) return # TODO: track progress of this apt_handle.clear_cache() apt_handle.update(DummyProgress())
def install_ind_package(progress, package): status = UpdaterStatus.get_instance() # install an independent package. previous_state = status.state # Allow installing only if the updater is in certain safe states. if status.state not in [ UpdaterStatus.NO_UPDATES, UpdaterStatus.UPDATES_AVAILABLE, UpdaterStatus.UPDATES_INSTALLED ]: msg = "The install is already running" logger.warn(msg) progress.abort(msg) return False if package not in status.updatable_independent_packages: msg = "tried to install non-independent package {} using update_ind_pkg".format( package) logger.warn(msg) progress.abort(msg) return False status.state = UpdaterStatus.INSTALLING_INDEPENDENT status.save() update_sources_phase = 'updating-sources' installing_idp_phase = 'installing-idp-package' progress.split( Phase(update_sources_phase, _("Updating apt sources"), 10), Phase(installing_idp_phase, _("Installing independent package"), 90)) progress.start(update_sources_phase) apt_handle.update(progress) progress.start(installing_idp_phase) apt_handle.upgrade(package, progress) status.state = previous_state status.last_update = int(time.time()) # always check independent packages as NONE as urgent updates to # these packages are dealt with by the main updater status.updatable_independent_packages = get_ind_packages(Priority.NONE) status.is_scheduled = False status.save() progress.finish(_("Update completed")) return True
def _do_check(progress, priority=Priority.NONE): ''' Perform checks for all priorities greater than the one provided. ''' apt_handle.update(progress, sources_list=KANO_SOURCES_LIST) logger.debug("Checking urgent: {}".format(priority <= Priority.URGENT)) logger.debug("Checking standard: {}".format(priority <= Priority.STANDARD)) if (priority <= Priority.URGENT and apt_handle.is_update_available(priority=Priority.URGENT)): return Priority.URGENT if (priority <= Priority.STANDARD and apt_handle.is_update_available()): return Priority.STANDARD return Priority.NONE
def _do_check(progress, priority=Priority.NONE): ''' Perform checks for all priorities greater than the one provided. ''' apt_handle.update(progress, sources_list=KANO_SOURCES_LIST) logger.debug('Checking urgent: {}'.format(priority <= Priority.URGENT)) logger.debug('Checking standard: {}'.format(priority <= Priority.STANDARD)) if ( priority <= Priority.URGENT and apt_handle.is_update_avaliable(priority=Priority.URGENT) ): return Priority.URGENT if ( priority <= Priority.STANDARD and apt_handle.is_update_avaliable() ): return Priority.STANDARD return Priority.NONE
def _cache_deb_packages(progress, priority=Priority.NONE): progress.start('updating-sources') apt_handle.update(progress=progress) progress.start('downloading-apt-packages') apt_handle.cache_updates(progress, priority=priority)
def _cache_deb_packages(progress, priority=Priority.NONE): progress.start('updating-sources') apt_handle.update(progress=progress) progress.start('downloading-apt-packages') apt_handle.cache_updates(progress, priority=priority)
def _do_check(progress): apt_handle.update(progress, sources_list=KANO_SOURCES_LIST) return apt_handle.is_update_avaliable()