def __init__(self):
        """Init method for the Report helper class."""
        self.s3 = S3Helper()
        self.pg = Postgres()
        self.conn = self.pg.conn
        self.cursor = self.pg.cursor
        self.unknown_deps_helper = UnknownDepsReportHelper()
        self.sentry_helper = SentryReportHelper()
        self.npm_model_bucket = os.getenv('NPM_MODEL_BUCKET')
        self.maven_model_bucket = os.getenv('MAVEN_MODEL_BUCKET')
        self.pypi_model_bucket = os.getenv('PYPI_MODEL_BUCKET')
        self.golang_model_bucket = os.getenv('GOLANG_MODEL_BUCKET')
        self.maven_training_repo = os.getenv(
            'MAVEN_TRAINING_REPO',
            'https://github.com/fabric8-analytics/f8a-hpf-insights')
        self.npm_training_repo = os.getenv(
            'NPM_TRAINING_REPO',
            'https://github.com/fabric8-analytics/fabric8-analytics-npm-insights'
        )
        self.golang_training_repo = os.getenv(
            'GOLANG_TRAINING_REPO',
            'https://github.com/fabric8-analytics/f8a-golang-insights')
        self.pypi_training_repo = os.getenv(
            'PYPI_TRAINING_REPO',
            'https://github.com/fabric8-analytics/f8a-pypi-insights')

        self.emr_api = os.getenv('EMR_API', 'http://f8a-emr-deployment:6006')
 def __init__(self):
     """Init method for SentryReportHelper."""
     self.s3 = S3Helper()
     self.sentry_url = os.getenv('SENTRY_URL', 'https://sentry.devshift.net')
     self.sentry_api_issues = self.sentry_url + os.getenv(
         'SENTRY_API_ISSUES', '/api/0/projects/sentry/fabric8-analytics-production/issues/')
     self.sentry_api_tags = self.sentry_url + os.getenv('SENTRY_API_TAGS', '/api/0/issues/')
     self.sentry_token = os.getenv('SENTRY_AUTH_TOKEN', '')
    def save_worker_result_to_s3(frequency, report_name, content) -> bool:
        """Save worker result in S3 bucket.

        :param frequency: Frequency of Reporting ( daily/ monthly)
        :param report_name: Name of File/ Report.
        :param content: File Content to be saved in S3
        :return: True: Save Success, False: Saved Fail
        """
        logger.info("Trying to save report file")
        try:
            s3 = S3Helper()
            obj_key = f'v2/{frequency}/{report_name}.json'
            s3.store_json_content(content=content,
                                  obj_key=obj_key,
                                  bucket_name=s3.report_bucket_name)
            logger.info(f"Successfully saved report in {obj_key}.")
            return True
        except Exception as e:
            logger.exception(f'Unable to store the report on S3. Reason: {e}')
            return False
Beispiel #4
0
 def __init__(self):
     """Init method for the Report helper class."""
     self.s3 = S3Helper()
     self.curr_dir = os.path.join('/tmp', "dynamic_manifests")
     if not os.path.exists(self.curr_dir):
         os.makedirs(self.curr_dir)
 def __init__(self):
     """Init method for UnknownDepReportHelper."""
     self.s3 = S3Helper()
 def __upload_to_s3(self, file_path, key_name):
     s3h = S3Helper()
     bucket_name = os.environ['S3_CHANGE_FEED_BUCKET_NAME']
     s3h.upload(file_path, bucket_name, key_name)