def _get_spec_from_srpm(self): path = urlparse(self.srpm_url).path name = os.path.basename(path).rsplit('-', 2)[0] ReviewDirs.workdir_setup(name) self.do_download_srpm() SRPMFile(self.srpm_file).unpack() file = glob(os.path.join(ReviewDirs.srpm_unpacked, name + '*.spec'))[0] self.spec_file = file self.spec_url = 'file://' + file
def __init__(self, spec_file, srpm_file): ''' Create a Checks set. srpm_file and spec_file are required, unless invoked from ChecksLister. ''' _ChecksLoader.__init__(self) self.spec = SpecFile(spec_file, self.flags) self.srpm = SRPMFile(srpm_file) self.srpm.unpack() self.data = self.Data() self.data.rpms = RpmDataSource(self.spec) self.data.buildsrc = BuildFilesSource() self.data.sources = SourcesDataSource(self.spec) self._clock = None
def _get_spec_from_srpm(self): ''' Extract spec from srpm and update self.spec_url. ''' path = urlparse(self.srpm_url).path name = os.path.basename(path).rsplit('-', 2)[0] ReviewDirs.workdir_setup(name, Settings.cache) self.do_download_srpm() SRPMFile(self.srpm_file).unpack() try: path = glob(os.path.join(ReviewDirs.srpm_unpacked, name + '*.spec'))[0] except IndexError: raise ReviewError("Cannot find spec file in srpm") self.spec_file = path self.spec_url = 'file://' + path