devsecops-engine-tools 1.39.0__py3-none-any.whl → 1.40.1__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 +9 -5
- devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +2 -2
- devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +3 -2
- devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +2 -2
- devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +2 -2
- devsecops_engine_tools/version.py +1 -1
- {devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/METADATA +1 -1
- {devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/RECORD +11 -11
- {devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/WHEEL +0 -0
- {devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/entry_points.txt +0 -0
- {devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/top_level.txt +0 -0
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
from dataclasses import dataclass
|
|
2
|
+
import re
|
|
2
3
|
from devsecops_engine_tools.engine_core.src.domain.model.gateway.vulnerability_management_gateway import (
|
|
3
4
|
VulnerabilityManagementGateway,
|
|
4
5
|
)
|
|
@@ -91,10 +92,13 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
|
|
|
91
92
|
"VULNERABILITY_MANAGER"
|
|
92
93
|
]["BRANCH_FILTER"]
|
|
93
94
|
) or (vulnerability_management.dict_args["module"] == "engine_secret"):
|
|
94
|
-
tags = vulnerability_management.dict_args["module"]
|
|
95
|
+
tags = [vulnerability_management.dict_args["module"]]
|
|
95
96
|
if vulnerability_management.dict_args["module"] == "engine_iac":
|
|
96
|
-
tags = f"{vulnerability_management.dict_args['module']}_{'_'.join(vulnerability_management.dict_args['platform'])}"
|
|
97
|
-
|
|
97
|
+
tags = [f"{vulnerability_management.dict_args['module']}_{'_'.join(vulnerability_management.dict_args['platform'])}"]
|
|
98
|
+
if vulnerability_management.dict_args["module"] == "engine_container" and sum(1 for line in open("scanned_images.txt", 'r', encoding='utf-8') if line.strip()) > 1:
|
|
99
|
+
match = re.search(r"(?<=:)([^-]+)", vulnerability_management.dict_args['image_to_scan'])
|
|
100
|
+
tags.append(match.group(1) if match else None)
|
|
101
|
+
|
|
98
102
|
use_cmdb = vulnerability_management.config_tool[
|
|
99
103
|
"VULNERABILITY_MANAGER"
|
|
100
104
|
]["DEFECT_DOJO"]["CMDB"]["USE_CMDB"]
|
|
@@ -451,7 +455,7 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
|
|
|
451
455
|
"branch_tag": vulnerability_management.branch_tag,
|
|
452
456
|
"commit_hash": vulnerability_management.commit_hash,
|
|
453
457
|
"service": vulnerability_management.input_core.scope_pipeline,
|
|
454
|
-
"test_title": tags,
|
|
458
|
+
"test_title": '_'.join(tags),
|
|
455
459
|
"environment": (
|
|
456
460
|
enviroment_mapping[vulnerability_management.environment.lower()]
|
|
457
461
|
if vulnerability_management.environment is not None
|
|
@@ -785,4 +789,4 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
|
|
|
785
789
|
return self._get_where(finding, tag)
|
|
786
790
|
return finding.file_path
|
|
787
791
|
else:
|
|
788
|
-
return finding.file_path
|
|
792
|
+
return finding.file_path
|
|
@@ -25,7 +25,7 @@ class DependencyCheckTool(ToolGateway):
|
|
|
25
25
|
def download_tool(self, cli_version):
|
|
26
26
|
try:
|
|
27
27
|
self.download_tool_called = True
|
|
28
|
-
url = f"https://github.com/
|
|
28
|
+
url = f"https://github.com/dependency-check/DependencyCheck/releases/download/v{cli_version}/dependency-check-{cli_version}-release.zip"
|
|
29
29
|
response = requests.get(url, allow_redirects=True)
|
|
30
30
|
home_directory = os.path.expanduser("~")
|
|
31
31
|
zip_name = os.path.join(
|
|
@@ -81,7 +81,7 @@ class DependencyCheckTool(ToolGateway):
|
|
|
81
81
|
token
|
|
82
82
|
])
|
|
83
83
|
|
|
84
|
-
if not self.
|
|
84
|
+
if not self.download_tool_called:
|
|
85
85
|
command.append("--noupdate")
|
|
86
86
|
|
|
87
87
|
result = subprocess.run(command, capture_output=True, check=True, text=True)
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import dataclasses
|
|
2
|
+
from typing import List
|
|
2
3
|
|
|
3
4
|
|
|
4
5
|
@dataclasses.dataclass
|
|
@@ -20,7 +21,7 @@ class ImportScanRequest:
|
|
|
20
21
|
auto_create_context: str = ""
|
|
21
22
|
deduplication_on_engagement: str = ""
|
|
22
23
|
lead: str = ""
|
|
23
|
-
tags: str =
|
|
24
|
+
tags: List[str] = dataclasses.field(default_factory=list)
|
|
24
25
|
close_old_findings: str = ""
|
|
25
26
|
close_old_findings_product_scope: str = ""
|
|
26
27
|
push_to_jira: str = ""
|
|
@@ -124,4 +125,4 @@ class ImportScanRequest:
|
|
|
124
125
|
"api_scan_configuration": self.api_scan_configuration,
|
|
125
126
|
"build_id": self.build_id,
|
|
126
127
|
}
|
|
127
|
-
return r
|
|
128
|
+
return r
|
|
@@ -183,7 +183,7 @@ class ImportScanSerializer(Schema):
|
|
|
183
183
|
auto_create_context = fields.Str(required=False, load_default="true")
|
|
184
184
|
deduplication_on_engagement = fields.Str(required=False)
|
|
185
185
|
lead = fields.Str(required=False)
|
|
186
|
-
tags = fields.
|
|
186
|
+
tags = fields.List(fields.String(), required=True)
|
|
187
187
|
close_old_findings = fields.Str(required=False, load_default=True)
|
|
188
188
|
close_old_findings_product_scope = fields.Str(required=False)
|
|
189
189
|
push_to_jira = fields.Str(required=False)
|
|
@@ -224,4 +224,4 @@ class ImportScanSerializer(Schema):
|
|
|
224
224
|
|
|
225
225
|
@post_load
|
|
226
226
|
def make_cmdb(self, data, **kwargs):
|
|
227
|
-
return ImportScanRequest(**data)
|
|
227
|
+
return ImportScanRequest(**data)
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py
CHANGED
|
@@ -34,7 +34,7 @@ class ImportScanRestConsumer:
|
|
|
34
34
|
"auto_create_context": "false",
|
|
35
35
|
"deduplication_on_engagement": request.deduplication_on_engagement,
|
|
36
36
|
"lead": request.lead,
|
|
37
|
-
"tags": request.tags,
|
|
37
|
+
"tags": ",".join(request.tags) if request.tags else "",
|
|
38
38
|
"close_old_findings": str(request.close_old_findings),
|
|
39
39
|
"close_old_findings_product_scope": str(request.close_old_findings_product_scope),
|
|
40
40
|
"push_to_jira": str(request.push_to_jira),
|
|
@@ -112,4 +112,4 @@ class ImportScanRestConsumer:
|
|
|
112
112
|
except Exception as e:
|
|
113
113
|
logger.error(f"from dict import Scan: {response.json()}")
|
|
114
114
|
raise ApiError(e)
|
|
115
|
-
return response
|
|
115
|
+
return response
|
|
@@ -1 +1 @@
|
|
|
1
|
-
version = '1.
|
|
1
|
+
version = '1.40.1'
|
|
@@ -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=CzOchPN3BP6JxBIpFBs1_bjOHUmWZIroALSUWXop0r4,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
|
|
@@ -38,7 +38,7 @@ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secret
|
|
|
38
38
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
39
39
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py,sha256=lNjYo83p3lovwfW4BeBtHQZckZl9m-9jlcIB-DesqhY,5316
|
|
40
40
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
41
|
-
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=
|
|
41
|
+
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=ptzqoY7BkNO4jlna7Uw30mreKZfspwBRqEZMAbhRka4,29969
|
|
42
42
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
43
43
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py,sha256=cn9VGDaD9gUnJrLn9vEkQvfqYHIJftGE9ZACHEUOUxo,4132
|
|
44
44
|
devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -236,7 +236,7 @@ devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/__init_
|
|
|
236
236
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
237
237
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
238
238
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py,sha256=Na8FSmBODt9XtxTtWvGpLWy3RvhoPJ2i7jneEfvpaHM,7210
|
|
239
|
-
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py,sha256=
|
|
239
|
+
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py,sha256=dBR17PB5cqyxBIlSw339AifEw077PT_xoq4fB8qs9jc,4895
|
|
240
240
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
241
241
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py,sha256=ZUk-e1PKzV7uRAT7BpET363pgl2eMnXMCGSpewsOpKg,2236
|
|
242
242
|
devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py,sha256=Z6PHC5mV14q6yDDQ75qskjtIbV0mUn1LI47yshgY89Q,8910
|
|
@@ -276,10 +276,10 @@ devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_l
|
|
|
276
276
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py,sha256=-uVxaTkxnDmUUGQUdN9x_VKR8KJUagJKnGR6B1emoEU,577
|
|
277
277
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
278
278
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py,sha256=RinG3ISc-u_3VXVqntwdcQvZoQdmHPCvDHWSvnkCkcU,2619
|
|
279
|
-
devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py,sha256=
|
|
279
|
+
devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py,sha256=ACb9BH1HXIfdGhIte5__OshvsqPOHgWZ0syxwG5IP58,5151
|
|
280
280
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
281
281
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py,sha256=4IQLjqgyImVdn8AxoU3UKgXnvU-F-x7Tm2bJdp6nHm4,5265
|
|
282
|
-
devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py,sha256=
|
|
282
|
+
devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py,sha256=pq1H0m9k056AMdUpC3ci2-x56pz8UlLGqmG0_PqfUPM,7391
|
|
283
283
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
284
284
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py,sha256=BUOdvP39bEMQ6Unr2hB28eljVGU2Uv8dDEkzRyEJgyQ,2650
|
|
285
285
|
devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/component.py,sha256=_icc-ZAqw-aVgE5J4VH8Q7fSqpCgEGcfmurgRIN9NqM,448
|
|
@@ -295,7 +295,7 @@ devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapt
|
|
|
295
295
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py,sha256=39qqmTxECRY5IoFvK_B_R0vfwfJwLbdhGt_pcdvdVIE,3571
|
|
296
296
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py,sha256=k-z2tg_NPKMni7rZgXMZa2-t8_8F35r8YtF1EcjMyDs,2355
|
|
297
297
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding_exclusion.py,sha256=BL4xf1FE5tMsBri0LetxBRUgOgLogdoHX97rQkHh10g,1524
|
|
298
|
-
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py,sha256=
|
|
298
|
+
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py,sha256=SwkW-2Znzs_RiCPPsIgZKSG_VSO2afoQH5DTTg-dKPQ,5929
|
|
299
299
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py,sha256=DhiLPv8KyRhHBRhvF0ULhchhGAT8SQyn1ftiuou_aKw,2576
|
|
300
300
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py,sha256=x-Gh2BEP6IZccS2m_DLB8xI6aEkS19J0ZUpP2mjY88o,3078
|
|
301
301
|
devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/reimport_scan.py,sha256=6Wtg88p9WFdWjEAfNT2qjUcRGRg6wmruvuKcmajG3A8,3469
|
|
@@ -348,8 +348,8 @@ devsecops_engine_tools/engine_utilities/utils/name_conversion.py,sha256=ADJrRGax
|
|
|
348
348
|
devsecops_engine_tools/engine_utilities/utils/printers.py,sha256=amYAr9YQfYgR6jK9a2l26z3oovFPQ3FAKmhq6BKhEBA,623
|
|
349
349
|
devsecops_engine_tools/engine_utilities/utils/session_manager.py,sha256=Z0fdhB3r-dxU0nGSD9zW_B4r2Qol1rUnUCkhFR0U-HQ,487
|
|
350
350
|
devsecops_engine_tools/engine_utilities/utils/utils.py,sha256=XFap4yOK7ItLWsqbwDhvLd7NpDhs7i-UGJAMD6jjd7w,6687
|
|
351
|
-
devsecops_engine_tools-1.
|
|
352
|
-
devsecops_engine_tools-1.
|
|
353
|
-
devsecops_engine_tools-1.
|
|
354
|
-
devsecops_engine_tools-1.
|
|
355
|
-
devsecops_engine_tools-1.
|
|
351
|
+
devsecops_engine_tools-1.40.1.dist-info/METADATA,sha256=tW-9wImZKsHAxUSScW2dAyqQAzhc7bUS65oohhY1-6Y,11750
|
|
352
|
+
devsecops_engine_tools-1.40.1.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
|
|
353
|
+
devsecops_engine_tools-1.40.1.dist-info/entry_points.txt,sha256=MHCTFFs9bdNKo6YcWCcBW2_8X6yTisgLOlmVx-V8Rxc,276
|
|
354
|
+
devsecops_engine_tools-1.40.1.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
|
|
355
|
+
devsecops_engine_tools-1.40.1.dist-info/RECORD,,
|
|
File without changes
|
{devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{devsecops_engine_tools-1.39.0.dist-info → devsecops_engine_tools-1.40.1.dist-info}/top_level.txt
RENAMED
|
File without changes
|