in iact3/testing/base.py [0:0]
def _upload_to_oss(self, report_path: Path, index: str, file_names: list):
bucket = self.oss_config.bucket_name
region = self.oss_config.bucket_region
if bucket and region:
LOG.info(f'starting upload reports to oss bucket {bucket} '
f'which is in {region} region')
oss_prefix = self.oss_config.object_prefix or f'{report_path.name}-{self.uid}'
oss_prefix = f'{IAC_NAME}/{oss_prefix}'
oss_plugin = OssPlugin(
region_id=region, bucket_name=bucket, credential=self.auth.credential)
for file_name in file_names:
oss_plugin.put_local_file(f'{oss_prefix}/{file_name}', report_path / file_name)
callback_config = self.oss_config.callback_params
if callback_config.callback_url:
callback_params = {
'callbackUrl': callback_config.callback_url,
'callbackHost': callback_config.callback_host,
'callbackBody': callback_config.callback_body,
'callbackBodyType': callback_config.callback_body_type,
}
callback_var_params = callback_config.callback_var_params
oss_plugin.put_object_with_string(
f'{oss_prefix}/index.html', index, callback_params, callback_var_params)
else:
oss_plugin.put_object_with_string(f'{oss_prefix}/index.html', index)