def read_remote(self): '''Read remote repo metadata.''' fn = 'index.dat' cmnd = '{0.gpgcom} -o "{0.tmpdir}/{1}" -d "{0.tmpdir}/{1}.gpg"'.format(self, fn) if self.options.verbosity > 0: print('\n'+cmnd) self.doit(cmnd) conf = os.path.join(self.tmpdir, fn) dict = core.conf2dic(conf,separator='|') for k,v in dict.items(): av = v.split(':') if len(av) < 2: msj = 'The length of dictionary entry "{0}|{1}" is too short!'.format(k, v) sys.exit(msj) if not k in self.files: self.files[k] = Fileitem(k, repos=self) if not k in self.files_remote: self.files_remote[k] = True self.files[k].hash_remote = av[0] self.files[k].size_remote = float(av[1]) self.files[k].mtime_remote = float(av[2])
def read(self, fromfile): if os.path.isfile(fromfile): for k,v in core.conf2dic(fromfile,separator='|').items(): self.files_read[k] = True av = v.split(':') if len(av) < 2: msj = 'The length of dictionary entry "{0}={1}" is too short!'.format(k,v) sys.exit(msj) if not k in self.files: self.files[k] = Fileitem(name=k, repos=self) self.files_read[k] = True self.files[k].hash_read = av[0] self.files[k].size_read = float(av[1]) self.files[k].mtime_read = float(av[2]) else: msj = 'Can\'t read from non existint file "{0}"!'.format(fromfile) sys.exit(msj)