mirror of
https://github.com/prowler-cloud/prowler.git
synced 2026-07-23 20:42:02 +00:00
fix(custom): execute custom checks (#4202)
This commit is contained in:
+2
-1
@@ -180,7 +180,8 @@ def prowler():
|
||||
|
||||
# Import custom checks from folder
|
||||
if checks_folder:
|
||||
parse_checks_from_folder(global_provider, checks_folder)
|
||||
custom_checks = parse_checks_from_folder(global_provider, checks_folder)
|
||||
checks_to_execute.update(custom_checks)
|
||||
|
||||
# Exclude checks if -e/--excluded-checks
|
||||
if excluded_checks:
|
||||
|
||||
@@ -126,9 +126,9 @@ def parse_checks_from_file(input_file: str, provider: str) -> set:
|
||||
|
||||
|
||||
# Load checks from custom folder
|
||||
def parse_checks_from_folder(provider, input_folder: str) -> int:
|
||||
def parse_checks_from_folder(provider, input_folder: str) -> set:
|
||||
try:
|
||||
imported_checks = 0
|
||||
custom_checks = set()
|
||||
# Check if input folder is a S3 URI
|
||||
if provider.type == "aws" and re.search(
|
||||
"^s3://([^/]+)/(.*?([^/]+))/$", input_folder
|
||||
@@ -156,8 +156,8 @@ def parse_checks_from_folder(provider, input_folder: str) -> int:
|
||||
if os.path.exists(prowler_module):
|
||||
shutil.rmtree(prowler_module)
|
||||
shutil.copytree(check_module, prowler_module)
|
||||
imported_checks += 1
|
||||
return imported_checks
|
||||
custom_checks.add(check.name)
|
||||
return custom_checks
|
||||
except Exception as error:
|
||||
logger.critical(
|
||||
f"{error.__class__.__name__}[{error.__traceback__.tb_lineno}] -- {error}"
|
||||
|
||||
@@ -453,14 +453,14 @@ class TestCheck:
|
||||
"path": test_checks_folder,
|
||||
"provider": "aws",
|
||||
},
|
||||
"expected": 3,
|
||||
"expected": {"check11", "check12", "check7777"},
|
||||
},
|
||||
{
|
||||
"input": {
|
||||
"path": "s3://test/checks_folder/",
|
||||
"provider": "aws",
|
||||
},
|
||||
"expected": 3,
|
||||
"expected": {"check11", "check12", "check7777"},
|
||||
},
|
||||
]
|
||||
|
||||
|
||||
Reference in New Issue
Block a user