def _ensure_repos(self, updatedb=True): if 'release-latest' in self.repo_url or 'release-stable' in self.repo_url: LOG.warn("Special branches release/latest and release/stable currently doesn't work") self.repo_url = devel_repo_url_for_branch('master') repo = pkgmgr.repository('scalr-{0}'.format(self.repository), self.repo_url) # Delete previous repository for filename in glob.glob(os.path.dirname(repo.filename) + os.path.sep + 'scalr*'): if os.path.isfile(filename): os.remove(filename) if 'buildbot.scalr-labs.com' in self.repo_url and not linux.os.windows: self._configure_devel_repo(repo) elif linux.os.debian_family: self._apt_pin_release('scalr') # make downgrades possible elif linux.os.redhat_family or linux.os.oracle_family: self._yum_prioritize(repo) # Ensure new repository repo.ensure() if updatedb: LOG.info('Updating packages cache') def do_updatedb(): try: self.pkgmgr.updatedb() return True except: LOG.warn('Package manager error', exc_info=sys.exc_info()) wait_until(do_updatedb, sleep=10, timeout=120)
def _ensure_repos(self, updatedb=True): if "release-latest" in self.repo_url or "release-stable" in self.repo_url: LOG.warn("Special branches release/latest and release/stable currently doesn't work") self.repo_url = devel_repo_url_for_branch("master") repo = pkgmgr.repository("scalr-{0}".format(self.repository), self.repo_url) # Delete previous repository for filename in glob.glob(os.path.dirname(repo.filename) + os.path.sep + "scalr*"): if os.path.isfile(filename): os.remove(filename) if "buildbot.scalr-labs.com" in self.repo_url and not linux.os.windows: self._configure_devel_repo(repo) elif linux.os.debian_family: self._apt_pin_release("scalr") # make downgrades possible elif linux.os.redhat_family or linux.os.oracle_family: self._yum_prioritize(repo) # Ensure new repository repo.ensure() if updatedb: LOG.info("Updating packages cache") def do_updatedb(): try: self.pkgmgr.updatedb() return True except: LOG.warn("Package manager error", exc_info=sys.exc_info()) wait_until(do_updatedb, sleep=10, timeout=120)
def _ensure_repos(self): if not linux.os.windows_family: repo = repository('scalr-{0}'.format(self.repository), self.repo_url) # Delete previous repository for filename in glob.glob( os.path.dirname(repo.filename) + os.path.sep + 'scalr*'): if os.path.isfile(filename): os.remove(filename) # Ensure new repository repo.ensure()
def _configure_devel_repo(self, repo): # Pin devel repository if linux.os.redhat_family or linux.os.oracle_family: self._yum_prioritize(repo) else: self._apt_pin_release(self.repository) # Scalr repo has all required dependencies (like python-* libs, etc), # while Branch repository has only scalarizr package release_repo = pkgmgr.repository('scalr-release', devel_repo_url_for_branch('scalr')) release_repo.ensure()
def _configure_devel_repo(self, repo): # Pin devel repository if linux.os.redhat_family or linux.os.oracle_family: self._yum_prioritize(repo) else: self._apt_pin_release(self.repository) # Scalr repo has all required dependencies (like python-* libs, etc), # while Branch repository has only scalarizr package release_repo = pkgmgr.repository("scalr-release", devel_repo_url_for_branch("scalr")) release_repo.ensure()