def version_get(plugin, stdout): vf = pu.plugin_get_vf(plugin) hashes = {} for line in stdout.split('\n'): if line == "": continue h, f = line.split() filename = async.filename_decode(os.path.basename(f)) hashes[filename] = h return vf.version_get(hashes)
def version_hash(plugin, tempdir): vf = pu.plugin_get_vf(plugin) required_files = vf.files_get_all() md5sum_files = [] for f in required_files: filename = tempdir + async.filename_encode(f) if os.path.isfile(filename): md5sum_files.append(filename) d = async.subprocess('/usr/bin/md5sum', md5sum_files) return d
def version_get(plugin, stdout): vf = pu.plugin_get_vf(plugin) hashes = {} for line in stdout.split('\n'): if line == "": continue h, f = line.split() filename = async .filename_decode(os.path.basename(f)) hashes[filename] = h return vf.version_get(hashes)
def version_hash(plugin, tempdir): vf = pu.plugin_get_vf(plugin) required_files = vf.files_get_all() md5sum_files = [] for f in required_files: filename = tempdir + async .filename_encode(f) if os.path.isfile(filename): md5sum_files.append(filename) d = async .subprocess('/usr/bin/md5sum', md5sum_files) return d
def version_download(base_url, host_header, plugin, tempdir): """ Download files required for hashing. """ def cb(results): succ = filter(lambda r: r[0], results) if len(succ) == 0: msg = "No files downloaded" return Failure(VersionFingerprintFailed(msg)) else: return tempdir vf = pu.plugin_get_vf(plugin) required_files = vf.files_get_all() ds = [] for f in required_files: filename = tempdir + async.filename_encode(f) if not os.path.isfile(filename): d = async.download_url(base_url + f, host_header, filename) ds.append(d) dl = defer.DeferredList(ds, consumeErrors=True) dl.addCallback(cb) return dl
def version_download(base_url, host_header, plugin, tempdir): """ Download files required for hashing. """ def cb(results): succ = filter(lambda r: r[0], results) if len(succ) == 0: msg = "No files downloaded" return Failure(VersionFingerprintFailed(msg)) else: return tempdir vf = pu.plugin_get_vf(plugin) required_files = vf.files_get_all() ds = [] for f in required_files: filename = tempdir + async .filename_encode(f) if not os.path.isfile(filename): d = async .download_url(base_url + f, host_header, filename) ds.append(d) dl = defer.DeferredList(ds, consumeErrors=True) dl.addCallback(cb) return dl