def verify_hash(self, path: Path, hash: str) -> None: """ Raises: MissingFileError - path doesn't exist IntegrityError - path exists with bad hash """ common.vprint("[verify] {}".format(path)) integrity.verify_hash(path, hash)
def verify_hash(self, path: Path, hash: str) -> None: """ Raises: MissingFileError - path doesn't exist IntegrityError - path exists with bad hash """ common.vprint("[verify] {}".format(path)) try: integrity.verify_hash(path, hash) except Exception as err: common.eprint("[{}] verification failed: {}".format(path, err))
def download_verify_hash(self, dest_url: str, dest_path: Path, hash: str, *, cached: bool = True, assume_ok: bool = False) -> None: if cached: if assume_ok and dest_path.is_file(): common.vvprint("[assuming OK] {}".format(dest_path)) return try: integrity.verify_hash(dest_path, hash) common.vprint("[cached file] {}".format(dest_path)) return except (error.MissingFileError, error.IntegrityError): pass common.vprint("[downloading] {}".format(dest_path)) self.download(dest_url, dest_path) integrity.verify_hash(dest_path, hash)