def setUp(self): self.qstring = '?foo' self.url_modify = RepoURLModifier(query_auth_token=self.qstring[1:]) self.metadata_files = metadata.MetadataFiles('http://pulpproject.org', '/a/b/c', DownloaderConfig(), self.url_modify)
def setUp(self): self.metadata_files = metadata.MetadataFiles('http://pulpproject.org', '/a/b/c', DownloaderConfig()) self.repo = Repository('repo1') self.config = PluginCallConfiguration({}, {}) self.conduit = RepoSyncConduit(self.repo.id, 'yum_importer', 'abc123')
def check_metadata(self, url): """ :param url: curret URL we should sync :type url: str :return: instance of MetadataFiles :rtype: pulp_rpm.plugins.importers.yum.repomd.metadata.MetadataFiles """ _logger.info(_('Downloading metadata from %(feed)s.') % {'feed': url}) metadata_files = metadata.MetadataFiles(url, self.tmp_dir, self.nectar_config, self._url_modify) try: metadata_files.download_repomd() except IOError, e: raise PulpCodedException(error_code=error_codes.RPM1004, reason=str(e))
def check_metadata(self, url): """ Download and parse repomd.xml If the download fails, sets the "skip_repomd_steps" attribute to True and populates the "repomd_not_found_reason" attribute. :param url: curret URL we should sync :type url: str :return: instance of MetadataFiles :rtype: pulp_rpm.plugins.importers.yum.repomd.metadata.MetadataFiles :raises PulpCodedException: if the metadata cannot be parsed """ _logger.info(_('Downloading metadata from %(feed)s.') % {'feed': url}) metadata_files = metadata.MetadataFiles(url, self.tmp_dir, self.nectar_config, self._url_modify) _logger.error(self.tmp_dir) try: metadata_files.download_repomd() except IOError as e: # remember the reason so it can be reported to the user if no treeinfo is found either. self.repomd_not_found_reason = e.message _logger.debug(_('No yum repo metadata found.')) # set flag to True in order to skip repomd steps, since metadata was not found self.skip_repomd_steps = True return self.skip_repomd_steps = False self.metadata_found = True _logger.info(_('Parsing metadata.')) try: metadata_files.parse_repomd() except PulpCodedException, e: # Specifically ignore concerns about missing 'filelists' and 'other' xmls if (e.error_code == error_codes.RPM1015): reason = e.error_data.get('reason') ignore_reasons = [ '"{}" metadata is not found in repomd.xml'.format(s) for s in ['filelists', 'other'] ] if reason not in ignore_reasons: raise
def get_metadata(self): """ :return: instance of MetadataFiles where each relevant file has been identified and downloaded. :rtype: pulp_rpm.plugins.importers.yum.repomd.metadata.MetadataFiles """ _logger.info( _('Downloading metadata from %(feed)s.') % {'feed': self.sync_feed}) metadata_files = metadata.MetadataFiles(self.sync_feed, self.tmp_dir, self.nectar_config) # allow the downloader to be accessed by the cancel method if necessary self.downloader = metadata_files.downloader try: metadata_files.download_repomd() except IOError, e: raise PulpCodedException(error_code=error_codes.RPM1004, reason=str(e))
def setUp(self): self.metadata_files = metadata.MetadataFiles('http://pulpproject.org', '/a/b/c', DownloaderConfig())
def setUp(self): self.metadata_files = metadata.MetadataFiles('http://pulpproject.org', '/a/b/c', DownloaderConfig()) self.working_dir = tempfile.mkdtemp()