Skip to content
Snippets Groups Projects
Commit 156cd03b authored by penenadpi's avatar penenadpi Committed by Anze Luzar
Browse files

Fixed hadolint result handlng and non-recognized files

parent 282e4991
No related branches found
No related tags found
No related merge requests found
...@@ -13,6 +13,7 @@ class Compatibility: ...@@ -13,6 +13,7 @@ class Compatibility:
"js": ["es-lint", "ts-lint"], "js": ["es-lint", "ts-lint"],
"html": ["htmlhint"], "html": ["htmlhint"],
"docker": ["hadolint"], "docker": ["hadolint"],
"other": [""],
} }
def __init__(self): def __init__(self):
...@@ -45,6 +46,8 @@ class Compatibility: ...@@ -45,6 +46,8 @@ class Compatibility:
scanned_java = [] scanned_java = []
scanned_html = [] scanned_html = []
scanned_js = [] scanned_js = []
scanned_docker = []
scanned_other = []
# TODO: List of supported file types should be extended # TODO: List of supported file types should be extended
# TODO: Remove hardcoded check names # TODO: Remove hardcoded check names
...@@ -52,34 +55,42 @@ class Compatibility: ...@@ -52,34 +55,42 @@ class Compatibility:
for filename in os.listdir(iac_directory): for filename in os.listdir(iac_directory):
f = os.path.join(iac_directory, filename) f = os.path.join(iac_directory, filename)
if os.path.isfile(f): if os.path.isfile(f):
if f.find(".tf") > -1: if (f.find(".tf") or f.find(".tftpl")) > -1:
types.append("terraform") types.append("terraform")
scanned_terraform.append(filename) scanned_terraform.append(filename)
if f.find(".sh") > -1: elif f.find(".sh") > -1:
types.append("shell") types.append("shell")
scanned_shell.append(filename) scanned_shell.append(filename)
if f.find(".py") > -1: elif f.find(".py") > -1:
types.append("python") types.append("python")
scanned_py.append(filename) scanned_py.append(filename)
if f.find(".yaml") > -1: elif (f.find(".yaml") or f.find(".yml")) > -1:
types.append("yaml") types.append("yaml")
scanned_yaml.append(filename) scanned_yaml.append(filename)
if f.find(".java") > -1: elif f.find(".java") > -1:
types.append("java") types.append("java")
scanned_java.append(filename) scanned_java.append(filename)
if f.find(".html") > -1: elif f.find(".html") > -1:
types.append("html") types.append("html")
scanned_html.append(filename) scanned_html.append(filename)
if f.find(".js") > -1: elif f.find(".js") > -1:
types.append("js") types.append("js")
scanned_js.append(filename) scanned_js.append(filename)
elif f.find("Dockerfile") > -1:
types.append("docker")
scanned_docker.append(filename)
else:
types.append("other")
scanned_other.append(filename)
self.scanned_files["terraform"] = str(scanned_terraform) self.scanned_files["terraform"] = str(scanned_terraform)
self.scanned_files["python"] = str(scanned_py) self.scanned_files["python"] = str(scanned_py)
self.scanned_files["shell"] = str(scanned_shell) self.scanned_files["shell"] = str(scanned_shell)
...@@ -87,6 +98,8 @@ class Compatibility: ...@@ -87,6 +98,8 @@ class Compatibility:
self.scanned_files["java"] = str(scanned_java) self.scanned_files["java"] = str(scanned_java)
self.scanned_files["html"] = str(scanned_html) self.scanned_files["html"] = str(scanned_html)
self.scanned_files["js"] = str(scanned_js) self.scanned_files["js"] = str(scanned_js)
self.scanned_files["docker"] = str(scanned_docker)
self.scanned_files["other"] = str(scanned_other)
types = set(types) types = set(types)
print(types) print(types)
......
...@@ -102,7 +102,6 @@ class ResultsSummary: ...@@ -102,7 +102,6 @@ class ResultsSummary:
self.outcomes[check]["status"] = "Passed" self.outcomes[check]["status"] = "Passed"
return "Problems" return "Problems"
if check == "pylint": if check == "pylint":
if outcome.find("no problems")>-1: if outcome.find("no problems")>-1:
self.outcomes[check]["status"] = "Passed" self.outcomes[check]["status"] = "Passed"
...@@ -111,6 +110,18 @@ class ResultsSummary: ...@@ -111,6 +110,18 @@ class ResultsSummary:
self.outcomes[check]["status"] = "Problems" self.outcomes[check]["status"] = "Problems"
return "Problems" return "Problems"
if check == "hadolint":
if outcome=="":
self.outcomes[check]["status"] = "Passed"
return "Passed"
else:
self.outcomes[check]["status"] = "Problems"
return "Problems"
if check == "other":
self.outcomes[check]["status"] = "No scan performed"
return "No scan"
def summarize_no_files(self, check: str): def summarize_no_files(self, check: str):
""" """
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment