devsecops-engine-tools 1.7.30__py3-none-any.whl → 1.7.31__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of devsecops-engine-tools might be problematic. Click here for more details.
- devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +2 -0
- devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +4 -0
- devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +10 -0
- devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/__init__.py +0 -0
- devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +57 -0
- devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +140 -0
- devsecops_engine_tools/version.py +1 -1
- {devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/METADATA +6 -2
- {devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/RECORD +12 -9
- {devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/WHEEL +0 -0
- {devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/entry_points.txt +0 -0
- {devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/top_level.txt +0 -0
|
@@ -7,6 +7,9 @@ from devsecops_engine_tools.engine_sast.engine_iac.src.infrastructure.driven_ada
|
|
|
7
7
|
from devsecops_engine_tools.engine_sast.engine_iac.src.infrastructure.driven_adapters.kubescape.kubescape_tool import (
|
|
8
8
|
KubescapeTool
|
|
9
9
|
)
|
|
10
|
+
from devsecops_engine_tools.engine_sast.engine_iac.src.infrastructure.driven_adapters.kics.kics_tool import (
|
|
11
|
+
KicsTool
|
|
12
|
+
)
|
|
10
13
|
|
|
11
14
|
|
|
12
15
|
def runner_engine_iac(dict_args, tool, secret_tool, devops_platform_gateway, env):
|
|
@@ -17,6 +20,7 @@ def runner_engine_iac(dict_args, tool, secret_tool, devops_platform_gateway, env
|
|
|
17
20
|
tools = {
|
|
18
21
|
"CHECKOV": CheckovTool(),
|
|
19
22
|
"KUBESCAPE": KubescapeTool(),
|
|
23
|
+
"KICS": KicsTool()
|
|
20
24
|
}
|
|
21
25
|
|
|
22
26
|
if tool in tools:
|
|
@@ -21,3 +21,13 @@ class ConfigTool:
|
|
|
21
21
|
self.exclusions_all = None
|
|
22
22
|
self.exclusions_scope = None
|
|
23
23
|
self.rules_all = {}
|
|
24
|
+
if "KICS_LINUX" in json_data[tool]:
|
|
25
|
+
self.kics_linux = json_data[tool]["KICS_LINUX"]
|
|
26
|
+
if "KICS_WINDOWS" in json_data[tool]:
|
|
27
|
+
self.kics_windows = json_data[tool]["KICS_WINDOWS"]
|
|
28
|
+
if "KICS_MAC" in json_data[tool]:
|
|
29
|
+
self.kics_mac = json_data[tool]["KICS_MAC"]
|
|
30
|
+
if "PATH_KICS" in json_data[tool]:
|
|
31
|
+
self.path_kics = json_data[tool]["PATH_KICS"]
|
|
32
|
+
if "DOWNLOAD_KICS_ASSETS" in json_data[tool]:
|
|
33
|
+
self.download_kics_assets = json_data[tool]["DOWNLOAD_KICS_ASSETS"]
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/__init__.py
ADDED
|
File without changes
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
from devsecops_engine_tools.engine_core.src.domain.model.finding import (
|
|
2
|
+
Category,
|
|
3
|
+
Finding,
|
|
4
|
+
)
|
|
5
|
+
from datetime import datetime
|
|
6
|
+
from dataclasses import dataclass
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@dataclass
|
|
10
|
+
class KicsDeserealizator:
|
|
11
|
+
def get_list_finding(self, results_scan_list: list) -> "list[Finding]":
|
|
12
|
+
list_open_findings = []
|
|
13
|
+
|
|
14
|
+
for result in results_scan_list:
|
|
15
|
+
finding_open = Finding(
|
|
16
|
+
id=result.get("id"),
|
|
17
|
+
cvss=None,
|
|
18
|
+
where=result.get("file_name"),
|
|
19
|
+
description=result.get("description"),
|
|
20
|
+
severity=result.get("severity").lower(),
|
|
21
|
+
identification_date=datetime.now().strftime("%d%m%Y"),
|
|
22
|
+
published_date_cve=None,
|
|
23
|
+
module="engine_iac",
|
|
24
|
+
category=Category.VULNERABILITY,
|
|
25
|
+
requirements=None,
|
|
26
|
+
tool="Kics"
|
|
27
|
+
)
|
|
28
|
+
list_open_findings.append(finding_open)
|
|
29
|
+
|
|
30
|
+
return list_open_findings
|
|
31
|
+
|
|
32
|
+
def get_findings(self, data):
|
|
33
|
+
filtered_results = []
|
|
34
|
+
for query in data.get("queries", []):
|
|
35
|
+
severity = query.get("severity", "").upper()
|
|
36
|
+
if severity in {"LOW", "MEDIUM", "HIGH", "CRITICAL"}:
|
|
37
|
+
description = query.get("query_name", "")
|
|
38
|
+
query_id = query.get("query_id", "")
|
|
39
|
+
for file in query.get("files", []):
|
|
40
|
+
file_name = file.get("file_name", "")
|
|
41
|
+
filtered_results.append({
|
|
42
|
+
"severity": severity,
|
|
43
|
+
"description": description,
|
|
44
|
+
"file_name": file_name,
|
|
45
|
+
"id": query_id
|
|
46
|
+
})
|
|
47
|
+
return filtered_results
|
|
48
|
+
|
|
49
|
+
def calculate_total_vulnerabilities(self, data):
|
|
50
|
+
severity_counters = data.get("severity_counters", {})
|
|
51
|
+
|
|
52
|
+
critical = severity_counters.get("CRITICAL", 0)
|
|
53
|
+
high = severity_counters.get("HIGH", 0)
|
|
54
|
+
medium = severity_counters.get("MEDIUM", 0)
|
|
55
|
+
low = severity_counters.get("LOW", 0)
|
|
56
|
+
|
|
57
|
+
return critical + high + medium + low
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py
ADDED
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import subprocess
|
|
2
|
+
import json
|
|
3
|
+
import platform
|
|
4
|
+
import requests
|
|
5
|
+
import os
|
|
6
|
+
from devsecops_engine_tools.engine_sast.engine_iac.src.domain.model.gateways.tool_gateway import (
|
|
7
|
+
ToolGateway,
|
|
8
|
+
)
|
|
9
|
+
from devsecops_engine_tools.engine_sast.engine_iac.src.domain.model.config_tool import (
|
|
10
|
+
ConfigTool,
|
|
11
|
+
)
|
|
12
|
+
from devsecops_engine_tools.engine_sast.engine_iac.src.infrastructure.driven_adapters.kics.kics_deserealizator import (
|
|
13
|
+
KicsDeserealizator
|
|
14
|
+
)
|
|
15
|
+
from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
|
|
16
|
+
from devsecops_engine_tools.engine_utilities import settings
|
|
17
|
+
from devsecops_engine_tools.engine_utilities.github.infrastructure.github_api import GithubApi
|
|
18
|
+
|
|
19
|
+
logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class KicsTool(ToolGateway):
|
|
23
|
+
|
|
24
|
+
def download(self, file, url):
|
|
25
|
+
try:
|
|
26
|
+
response = requests.get(url)
|
|
27
|
+
with open(file, "wb") as f:
|
|
28
|
+
f.write(response.content)
|
|
29
|
+
except Exception as ex:
|
|
30
|
+
logger.error(f"An error ocurred downloading {file} {ex}")
|
|
31
|
+
|
|
32
|
+
def install_tool(self, file, url, command_prefix):
|
|
33
|
+
github_api = GithubApi()
|
|
34
|
+
kics = f"./{command_prefix}/kics"
|
|
35
|
+
installed = subprocess.run(
|
|
36
|
+
["which", command_prefix],
|
|
37
|
+
stdout=subprocess.PIPE,
|
|
38
|
+
stderr=subprocess.PIPE,
|
|
39
|
+
)
|
|
40
|
+
if installed.returncode == 1:
|
|
41
|
+
try:
|
|
42
|
+
self.download(file, url)
|
|
43
|
+
github_api.unzip_file(file, command_prefix)
|
|
44
|
+
subprocess.run(["chmod", "+x", kics])
|
|
45
|
+
return kics
|
|
46
|
+
except Exception as e:
|
|
47
|
+
logger.error(f"Error installing KICS: {e}")
|
|
48
|
+
else:
|
|
49
|
+
return command_prefix
|
|
50
|
+
|
|
51
|
+
def install_tool_windows(self, file, url, command_prefix):
|
|
52
|
+
try:
|
|
53
|
+
subprocess.run(
|
|
54
|
+
[command_prefix, "version"],
|
|
55
|
+
stdout=subprocess.PIPE,
|
|
56
|
+
stderr=subprocess.PIPE,
|
|
57
|
+
)
|
|
58
|
+
return command_prefix
|
|
59
|
+
except:
|
|
60
|
+
try:
|
|
61
|
+
github_api = GithubApi()
|
|
62
|
+
self.download(file, url)
|
|
63
|
+
github_api.unzip_file(file, command_prefix)
|
|
64
|
+
return f"./{command_prefix}/kics"
|
|
65
|
+
|
|
66
|
+
except Exception as e:
|
|
67
|
+
logger.error(f"Error installing KICS: {e}")
|
|
68
|
+
|
|
69
|
+
def execute_kics(self, folders_to_scan, prefix):
|
|
70
|
+
folders = ','.join(folders_to_scan)
|
|
71
|
+
command = [prefix, "scan", "-p", folders, "-q", "./kics_assets/assets", "--report-formats", "json", "-o", "./"]
|
|
72
|
+
try:
|
|
73
|
+
subprocess.run(command, capture_output=True)
|
|
74
|
+
except subprocess.CalledProcessError as e:
|
|
75
|
+
logger.error(f"Error during KICS execution: {e}")
|
|
76
|
+
|
|
77
|
+
def load_results(self):
|
|
78
|
+
try:
|
|
79
|
+
with open('results.json') as f:
|
|
80
|
+
data = json.load(f)
|
|
81
|
+
return data
|
|
82
|
+
except Exception as ex:
|
|
83
|
+
logger.error(f"An error ocurred loading KICS results {ex}")
|
|
84
|
+
return None
|
|
85
|
+
|
|
86
|
+
def select_operative_system(self, os_platform, folders_to_scan, config_tool: ConfigTool, path_kics):
|
|
87
|
+
command_prefix = path_kics
|
|
88
|
+
if os_platform == "Linux":
|
|
89
|
+
kics_zip = "kics_linux.zip"
|
|
90
|
+
url_kics = config_tool.kics_linux
|
|
91
|
+
command_prefix = self.install_tool(kics_zip, url_kics, command_prefix)
|
|
92
|
+
elif os_platform == "Windows":
|
|
93
|
+
kics_zip = "kics_windows.zip"
|
|
94
|
+
url_kics = config_tool.kics_windows
|
|
95
|
+
command_prefix = self.install_tool_windows(kics_zip, url_kics, command_prefix)
|
|
96
|
+
elif os_platform == "Darwin":
|
|
97
|
+
kics_zip = "kics_macos.zip"
|
|
98
|
+
url_kics = config_tool.kics_mac
|
|
99
|
+
command_prefix = self.install_tool(kics_zip, url_kics, command_prefix)
|
|
100
|
+
else:
|
|
101
|
+
logger.warning(f"{os_platform} is not supported.")
|
|
102
|
+
return [], None
|
|
103
|
+
|
|
104
|
+
self.execute_kics(folders_to_scan, command_prefix)
|
|
105
|
+
|
|
106
|
+
def get_assets(self, kics_version):
|
|
107
|
+
name_zip = "assets_compressed.zip"
|
|
108
|
+
assets_url = f"https://github.com/Checkmarx/kics/releases/download/v{kics_version}/extracted-info.zip"
|
|
109
|
+
self.download(name_zip, assets_url)
|
|
110
|
+
|
|
111
|
+
directory_assets = "kics_assets"
|
|
112
|
+
github_api = GithubApi()
|
|
113
|
+
github_api.unzip_file(name_zip, directory_assets)
|
|
114
|
+
|
|
115
|
+
def run_tool(
|
|
116
|
+
self, config_tool: ConfigTool, folders_to_scan, environment, platform_to_scan, secret_tool
|
|
117
|
+
):
|
|
118
|
+
kics_version = config_tool.version
|
|
119
|
+
path_kics = config_tool.path_kics
|
|
120
|
+
download_kics_assets = config_tool.download_kics_assets
|
|
121
|
+
if download_kics_assets:
|
|
122
|
+
self.get_assets(kics_version)
|
|
123
|
+
|
|
124
|
+
os_platform = platform.system()
|
|
125
|
+
self.select_operative_system(os_platform, folders_to_scan, config_tool, path_kics)
|
|
126
|
+
|
|
127
|
+
data = self.load_results()
|
|
128
|
+
if data:
|
|
129
|
+
kics_deserealizator = KicsDeserealizator()
|
|
130
|
+
total_vulnerabilities = kics_deserealizator.calculate_total_vulnerabilities(data)
|
|
131
|
+
path_file = os.path.abspath("results.json")
|
|
132
|
+
|
|
133
|
+
if total_vulnerabilities == 0:
|
|
134
|
+
return [], path_file
|
|
135
|
+
|
|
136
|
+
filtered_results = kics_deserealizator.get_findings(data)
|
|
137
|
+
finding_list = kics_deserealizator.get_list_finding(filtered_results)
|
|
138
|
+
|
|
139
|
+
return finding_list, path_file
|
|
140
|
+
return [], None
|
|
@@ -1 +1 @@
|
|
|
1
|
-
version = '1.7.
|
|
1
|
+
version = '1.7.31'
|
{devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/METADATA
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: devsecops-engine-tools
|
|
3
|
-
Version: 1.7.
|
|
3
|
+
Version: 1.7.31
|
|
4
4
|
Summary: Tool for DevSecOps strategy
|
|
5
5
|
Home-page: https://github.com/bancolombia/devsecops-engine-tools
|
|
6
6
|
Author: Bancolombia DevSecOps Team
|
|
@@ -98,13 +98,17 @@ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_con
|
|
|
98
98
|
<th>Type</th>
|
|
99
99
|
</tr>
|
|
100
100
|
<tr>
|
|
101
|
-
<td rowspan="
|
|
101
|
+
<td rowspan="3">ENGINE_IAC</td>
|
|
102
102
|
<td><a href="https://www.checkov.io/">CHECKOV</a></td>
|
|
103
103
|
<td>Free</td>
|
|
104
104
|
</tr>
|
|
105
105
|
<tr>
|
|
106
106
|
<td><a href="https://kubescape.io/">KUBESCAPE</a></td>
|
|
107
107
|
<td>Free</td>
|
|
108
|
+
</tr>
|
|
109
|
+
<tr>
|
|
110
|
+
<td><a href="https://www.kics.io/">KICS</a></td>
|
|
111
|
+
<td>Free</td>
|
|
108
112
|
</tr>
|
|
109
113
|
<tr>
|
|
110
114
|
<td>ENGINE_DAST</td>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
devsecops_engine_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
2
|
-
devsecops_engine_tools/version.py,sha256=
|
|
2
|
+
devsecops_engine_tools/version.py,sha256=Tca23yRPfWkiFCGCli2_DjySHpzpH0VrKME5ge3f-9w,19
|
|
3
3
|
devsecops_engine_tools/engine_core/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
4
4
|
devsecops_engine_tools/engine_core/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
5
5
|
devsecops_engine_tools/engine_core/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -36,7 +36,7 @@ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secret
|
|
|
36
36
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
37
37
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py,sha256=Ot1j5my-iEpU-ZYy9yNXkwmwLOmJ3f95JyyAUcpFN5g,4967
|
|
38
38
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
|
-
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=
|
|
39
|
+
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=6xQ9coU37r9g3lYlxWEVGiM8WBWSL_5TP-6EVr8BWAY,10992
|
|
40
40
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
41
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py,sha256=JhTfHCR4G29VByrS7ntKZwXbfCHpO0C3D8vIQlBD4rQ,3855
|
|
42
42
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -81,12 +81,12 @@ devsecops_engine_tools/engine_sast/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQe
|
|
|
81
81
|
devsecops_engine_tools/engine_sast/engine_iac/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
82
82
|
devsecops_engine_tools/engine_sast/engine_iac/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
83
83
|
devsecops_engine_tools/engine_sast/engine_iac/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
84
|
-
devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py,sha256=
|
|
84
|
+
devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py,sha256=lN5bywQHIBmKeQ8HV_pGha29lZQ8Dl0IuhXxqeRCZd0,1307
|
|
85
85
|
devsecops_engine_tools/engine_sast/engine_iac/src/deployment/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
86
86
|
devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
87
87
|
devsecops_engine_tools/engine_sast/engine_iac/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
88
88
|
devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
89
|
-
devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py,sha256=
|
|
89
|
+
devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py,sha256=K8kzxap2I3ogHQvunWb23SxqCCDuvnoUO5fSvRz_g-E,1790
|
|
90
90
|
devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
91
91
|
devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py,sha256=tqOkmy5fRMvCFjuQUSdGdWd-PrShtJi0YDlAQ8htMzM,216
|
|
92
92
|
devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -97,6 +97,9 @@ devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters
|
|
|
97
97
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py,sha256=qbE6wUO5_WFXF_QolL0JYelaRGEOUakPEZR_6HAKzzI,4355
|
|
98
98
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py,sha256=gBwnQ20QExHTrN1nvErUUqb_IMHvYKJijqc55XwZHQk,1404
|
|
99
99
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py,sha256=ddPjhbOe2w-kQmiBLP6udBPmXZhVZqQLwOEdgvt1r1s,7664
|
|
100
|
+
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
101
|
+
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py,sha256=b1X5GWz2snJtsKZcGEsILNc178hv9p-lg-el0Jc-_Eo,2084
|
|
102
|
+
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py,sha256=5XTYxq0aptupaQfwwXTYDCKGGd4YyGdRP9y6yckoGuk,5345
|
|
100
103
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
101
104
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py,sha256=i-hKFmR-OriwiiBg-3E3RKc7hjI1E8jv8Z7dQ8_Q0qE,2885
|
|
102
105
|
devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py,sha256=wcornvTaU5o2MtZj_KkgWvNABW2rCd08sZkaMbbZoTI,4707
|
|
@@ -247,8 +250,8 @@ devsecops_engine_tools/engine_utilities/utils/logger_info.py,sha256=4Mz8Bwlm9Mku
|
|
|
247
250
|
devsecops_engine_tools/engine_utilities/utils/name_conversion.py,sha256=ADJrRGaxYSDe0ZRh6VHRf53H4sXPcb-vNP_i81PUn3I,307
|
|
248
251
|
devsecops_engine_tools/engine_utilities/utils/printers.py,sha256=GAslbWaBpwP3mP6fBsgVl07TTBgcCggQTy8h2M9ibeo,612
|
|
249
252
|
devsecops_engine_tools/engine_utilities/utils/session_manager.py,sha256=yNtlT-8Legz1sHbGPH8LNYjL-LgDUE0zXG2rYjiab7U,290
|
|
250
|
-
devsecops_engine_tools-1.7.
|
|
251
|
-
devsecops_engine_tools-1.7.
|
|
252
|
-
devsecops_engine_tools-1.7.
|
|
253
|
-
devsecops_engine_tools-1.7.
|
|
254
|
-
devsecops_engine_tools-1.7.
|
|
253
|
+
devsecops_engine_tools-1.7.31.dist-info/METADATA,sha256=6MoaA3dTvTpV-3DJODIYxIV5QltvFQLXcVlnZ75iCVo,7691
|
|
254
|
+
devsecops_engine_tools-1.7.31.dist-info/WHEEL,sha256=Z4pYXqR_rTB7OWNDYFOm1qRk0RX6GFP2o8LgvP453Hk,91
|
|
255
|
+
devsecops_engine_tools-1.7.31.dist-info/entry_points.txt,sha256=9IjXF_7Zpgowq_SY6OSmsA9vZze18a8_AeHwkQVrgKk,131
|
|
256
|
+
devsecops_engine_tools-1.7.31.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
|
|
257
|
+
devsecops_engine_tools-1.7.31.dist-info/RECORD,,
|
|
File without changes
|
{devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{devsecops_engine_tools-1.7.30.dist-info → devsecops_engine_tools-1.7.31.dist-info}/top_level.txt
RENAMED
|
File without changes
|