Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def setup_function(function):
# Remove .restconfig file before running any test
try:
os.remove(HubInstance.configfile)
except OSError:
pass
def teardown_function(function):
# Remove .restconfig file after running any test
try:
os.remove(HubInstance.configfile)
except OSError:
pass
def scan_container_image_with_dockerfile(imagespec, dockerfile, base_image, omit_base_layers):
hub = HubInstance()
scanner = ContainerImageScanner(hub, imagespec, dockerfile=dockerfile, base_image=base_image, omit_base_layers=omit_base_layers)
base_layers = scanner.get_base_layers()
print (json.dumps(base_layers, indent=2))
# sys.exit()
scanner.prepare_container_image()
scanner.process_container_image()
scanner.generate_project_structures(base_layers)
scanner.submit_layer_scans()
def create_version_notices_report(self, version, format="TEXT"):
assert format in HubInstance.valid_notices_formats, "Format must be one of {}".format(HubInstance.valid_notices_formats)
post_data = {
'categories': HubInstance.valid_categories,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION_LICENSE',
'reportFormat': format
}
notices_report_url = self.get_link(version, 'licenseReports')
return self.execute_post(notices_report_url, post_data)
def create_version_reports(self, version, report_list, format="CSV"):
assert all(list(map(lambda k: k in HubInstance.valid_categories, report_list))), "One or more selected report categories in {} are not valid ({})".format(
report_list, HubInstance.valid_categories)
assert format in HubInstance.valid_report_formats, "Format must be one of {}".format(HubInstance.valid_report_formats)
post_data = {
'categories': report_list,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION',
'reportFormat': format
}
version_reports_url = self.get_link(version, 'versionReport')
return self.execute_post(version_reports_url, post_data)
def create_version_reports(self, version, report_list, format="CSV"):
assert all(list(map(lambda k: k in HubInstance.valid_categories, report_list))), "One or more selected report categories in {} are not valid ({})".format(
report_list, HubInstance.valid_categories)
assert format in HubInstance.valid_report_formats, "Format must be one of {}".format(HubInstance.valid_report_formats)
post_data = {
'categories': report_list,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION',
'reportFormat': format
}
version_reports_url = self.get_link(version, 'versionReport')
return self.execute_post(version_reports_url, post_data)
def create_version_notices_report(self, version, format="TEXT"):
assert format in HubInstance.valid_notices_formats, "Format must be one of {}".format(HubInstance.valid_notices_formats)
post_data = {
'categories': HubInstance.valid_categories,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION_LICENSE',
'reportFormat': format
}
notices_report_url = self.get_link(version, 'licenseReports')
return self.execute_post(notices_report_url, post_data)
def create_version_notices_report(self, version, format="TEXT"):
assert format in HubInstance.valid_notices_formats, "Format must be one of {}".format(HubInstance.valid_notices_formats)
post_data = {
'categories': ["COPYRIGHT_TEXT"],
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION_LICENSE',
'reportFormat': format
}
notices_report_url = self.get_link(version, 'licenseReports')
return self.execute_post(notices_report_url, post_data)
def create_version_reports(self, version, report_list, format="CSV"):
assert all(list(map(lambda k: k in HubInstance.valid_categories, report_list))), "One or more selected report categories in {} are not valid ({})".format(
report_list, HubInstance.valid_categories)
assert format in HubInstance.valid_report_formats, "Format must be one of {}".format(HubInstance.valid_report_formats)
post_data = {
'categories': report_list,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION',
'reportFormat': format
}
version_reports_url = self.get_link(version, 'versionReport')
return self.execute_post(version_reports_url, post_data)
def create_version_reports(self, version, report_list, format="CSV"):
assert all(list(map(lambda k: k in HubInstance.valid_categories, report_list))), "One or more selected report categories in {} are not valid ({})".format(
report_list, HubInstance.valid_categories)
assert format in HubInstance.valid_report_formats, "Format must be one of {}".format(HubInstance.valid_report_formats)
post_data = {
'categories': report_list,
'versionId': version['_meta']['href'].split("/")[-1],
'reportType': 'VERSION',
'reportFormat': format
}
version_reports_url = self.get_link(version, 'versionReport')
return self.execute_post(version_reports_url, post_data)