Beispiel #1
0
 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)
Beispiel #2
0
 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))
Beispiel #3
0
 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)