def retrieve_depcheck_db_if_exists(self, data_dir):
     """ Retrieve zipped CVE DB file as stored on S3 and extract"""
     if self.object_exists(self.DEPCHECK_DB_ARCHIVE):
         with tempdir() as archive_dir:
             archive_path = os.path.join(archive_dir,
                                         self.DEPCHECK_DB_ARCHIVE)
             self.retrieve_file(self.DEPCHECK_DB_ARCHIVE, archive_path)
             Archive.extract_zip(archive_path, data_dir)
             return True
     return False
 def retrieve_victims_db_if_exists(self, victims_db_dir):
     """ Retrieve VICTIMS_DB_ARCHIVE from S3 and extract into victims_db_dir """
     if self.object_exists(self.VICTIMS_DB_ARCHIVE):
         with tempdir() as temp_archive_dir:
             temp_archive_path = os.path.join(temp_archive_dir,
                                              self.VICTIMS_DB_ARCHIVE)
             self.retrieve_file(self.VICTIMS_DB_ARCHIVE, temp_archive_path)
             Archive.extract_zip(temp_archive_path, victims_db_dir)
             return True
     return False
Esempio n. 3
0
    def retrieve_index_if_exists(self, target_dir):
        """ Retrieve central-index.zip from S3 and extract into target_dir/central-index"""
        if self.object_exists(self._INDEX_ARCHIVE):
            with tempdir() as temp_dir:
                archive_path = os.path.join(temp_dir, self._INDEX_ARCHIVE)
                central_index_dir = os.path.join(target_dir, self._INDEX_DIRNAME)
                self.retrieve_file(self._INDEX_ARCHIVE, archive_path)
                Archive.extract_zip(archive_path, central_index_dir, mkdest=True)
                return True

        return False