devsecops-engine-tools 1.51.0__py3-none-any.whl → 1.52.0__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.

@@ -13,6 +13,7 @@ class VulnerabilityManagement:
13
13
  repository_provider: str
14
14
  source_code_management_uri: str
15
15
  base_compact_remote_config_url: str
16
+ sonar_instance: any
16
17
  access_token: str
17
18
  version: str
18
19
  build_id: str
@@ -165,6 +165,7 @@ class HandleScan:
165
165
  self.devops_platform_gateway.get_base_compact_remote_config_url(
166
166
  dict_args["remote_config_repo"]
167
167
  ),
168
+ None,
168
169
  self.devops_platform_gateway.get_variable("access_token"),
169
170
  self.devops_platform_gateway.get_variable(
170
171
  "build_execution_id"
@@ -461,6 +461,7 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
461
461
  use_cmdb: bool,
462
462
  ):
463
463
  tool_scm_conf_mapping = vulnerability_management.config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["TOOL_SCM_MAPPING"]
464
+ tool_sonar_conf_mapping = vulnerability_management.config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["TOOL_SONAR_MAPPING"]
464
465
  common_fields = {
465
466
  "scan_type": self.scan_type_mapping[vulnerability_management.scan_type],
466
467
  "file": vulnerability_management.input_core.path_file_results,
@@ -499,6 +500,15 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
499
500
  "reimport_scan": vulnerability_management.config_tool[
500
501
  "VULNERABILITY_MANAGER"
501
502
  ]["DEFECT_DOJO"]["REIMPORT_SCAN"],
503
+ "tool_sonarqube_configuration": (
504
+ tool_sonar_conf_mapping[
505
+ vulnerability_management.sonar_instance.upper()
506
+ ]
507
+ if vulnerability_management.sonar_instance is not None
508
+ and vulnerability_management.sonar_instance.upper()
509
+ in tool_sonar_conf_mapping
510
+ else tool_sonar_conf_mapping["DEFAULT"]
511
+ ),
502
512
  }
503
513
 
504
514
  if use_cmdb:
@@ -168,8 +168,17 @@ class BreakBuild:
168
168
  f"Mitigated: {mitigated_count} AllFindings: {all_findings_count} BaseImage: {base_image_count} NewFindings: {self.policy_excluded} Transferred: {transferred_list_count} WhiteList: {white_list_count}\n\n"
169
169
  )
170
170
  total = all_findings_count - self.policy_excluded - white_list_count - base_image_count - transferred_list_count
171
- remediation_rate_value = self._get_percentage(mitigated_count / total)
172
171
 
172
+ if total == 0:
173
+ print(
174
+ self.devops_platform_gateway.message(
175
+ "succeeded",
176
+ "No findings to mitigate",
177
+ )
178
+ )
179
+ return
180
+
181
+ remediation_rate_value = self._get_percentage(mitigated_count / total)
173
182
  risk_threshold = self._get_remediation_rate_threshold(total)
174
183
  self.remediation_rate = remediation_rate_value
175
184
 
@@ -202,7 +202,7 @@ class ImportScanSerializer(Schema):
202
202
  test_title = fields.Str(required=False)
203
203
  product_description = fields.Str(required=False)
204
204
  create_finding_groups_for_all_findings = fields.Str(required=False)
205
- tool_sonarqube_configuration = fields.Int(required=False, load_default=1)
205
+ tool_sonarqube_configuration = fields.Int(required=False)
206
206
  tool_scm_configuration = fields.Int(required=False)
207
207
  code_app = fields.Str(required=False)
208
208
  # defect-dojo credential
@@ -59,6 +59,11 @@ def get_inputs_from_cli(args):
59
59
  required=False,
60
60
  help="Url to access sonar API",
61
61
  )
62
+ parser.add_argument(
63
+ "--sonar_instance",
64
+ required=False,
65
+ help="Name of the sonar instance to recognize tool config",
66
+ )
62
67
  parser.add_argument(
63
68
  "--token_cmdb",
64
69
  required=False,
@@ -82,6 +87,7 @@ def get_inputs_from_cli(args):
82
87
  "use_secrets_manager": args.use_secrets_manager,
83
88
  "send_metrics": args.send_metrics,
84
89
  "sonar_url": args.sonar_url,
90
+ "sonar_instance": args.sonar_instance,
85
91
  "token_cmdb": args.token_cmdb,
86
92
  "token_vulnerability_management": args.token_vulnerability_management,
87
93
  "token_sonar": args.token_sonar,
@@ -66,7 +66,13 @@ class ReportSonar:
66
66
 
67
67
  if args["use_secrets_manager"] == "true":
68
68
  secret = self.secrets_manager_gateway.get_secret(config_tool)
69
- secret_tool = secret
69
+ secret_tool = secret.copy()
70
+ secret["token_sonar"] = (
71
+ secret[f"token_{args['sonar_instance'].lower()}"]
72
+ if args["sonar_instance"] is not None
73
+ and f"token_{args['sonar_instance'].lower()}" in secret
74
+ else secret["token_sonar"]
75
+ )
70
76
  else:
71
77
  secret = args
72
78
  secret_tool = None
@@ -94,6 +100,7 @@ class ReportSonar:
94
100
  config_tool = config_tool,
95
101
  source_code_management_uri = source_code_management_uri,
96
102
  base_compact_remote_config_url = compact_remote_config_url,
103
+ sonar_instance = args["sonar_instance"],
97
104
  repository_provider = self.devops_platform_gateway.get_variable("repository_provider"),
98
105
  access_token = self.devops_platform_gateway.get_variable("access_token"),
99
106
  version = self.devops_platform_gateway.get_variable("build_execution_id"),
@@ -1 +1 @@
1
- version = '1.51.0'
1
+ version = '1.52.0'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.51.0
3
+ Version: 1.52.0
4
4
  Summary: Tool for DevSecOps strategy
5
5
  Home-page: https://github.com/bancolombia/devsecops-engine-tools
6
6
  Author: Bancolombia DevSecOps Team
@@ -1,5 +1,5 @@
1
1
  devsecops_engine_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- devsecops_engine_tools/version.py,sha256=zeigchfuHOTJZ8zRQpxdnzIgxxjSh4gRl3UvavtQBQU,19
2
+ devsecops_engine_tools/version.py,sha256=Wo-bv5K2VA8MRRvm-mE4f4IcsVOfDXgSdoqtoIUC9dc,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
@@ -17,7 +17,7 @@ devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py,sha256=n
17
17
  devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py,sha256=0sySEnFNkS2Y8uF5GUVAYehXw-i2OglUClkVobnSTPc,257
18
18
  devsecops_engine_tools/engine_core/src/domain/model/report.py,sha256=09QV_jBQbucoiGM_PjVzRwWvvnebAx24Vehs2bqEe2o,1929
19
19
  devsecops_engine_tools/engine_core/src/domain/model/threshold.py,sha256=d_T9EC4l0H_pm-RqR3obgYksM3TOnWETfCNwWW7xMUk,644
20
- devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py,sha256=6zR3IKNTMuCwRDr9J-trg0Z7n_XSbhtDEfdDTU_Y508,581
20
+ devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py,sha256=9pHlhSWWz7HM7rDKYuqyCafbMVpDcRVHJQQT6c4oQ2Q,605
21
21
  devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
22
22
  devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py,sha256=-L7O48UlUe2wI1DRnpAdZ98SLge7pcvoUOXITgFaBLg,800
23
23
  devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py,sha256=wApR5faZG5YqprWrDBMM9b4V7sBraJUxDmIUNGi0zqg,193
@@ -28,7 +28,7 @@ devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_manage
28
28
  devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py,sha256=gIMtuO6J1jv80wJwdaBqHhPsHshYodF0fbDJ6UBzpcc,16924
30
30
  devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py,sha256=RirHqsW5AhGjV7ITa13bW_BfM6VE99DffrPASoB9SN0,9403
31
- devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py,sha256=KMbPszDoAVHDg_wW76SpMekYuDQOODHn_pGSlIkmxFc,10960
31
+ devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py,sha256=Q9gfcDW3lVuR-fPxooJO_DIaoimm0owsJjNXuwQDKFQ,10994
32
32
  devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py,sha256=xfaGrDf9rnN32qG_zOD9NN-a62reqQ5KOd2bP6xoRnw,2417
33
33
  devsecops_engine_tools/engine_core/src/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
34
34
  devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__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=SIRGfjZZF_5JC_bjN3bvObKDZaSqtEcCd3DR2FGC5jI,5742
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=EdnTHbIHDP4FYG5L-KOgMwxyJveHB35JeJN4svMjG8I,31038
41
+ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=cbpVwo5P7cT7VC4_EX9doDd_bzRQiyuQrCsmAoTVi78,31597
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=jK3Qtt0UfSX4wbE4wo4iY7a8v8u1pcQcWASWmJ7sFfk,4216
44
44
  devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -101,7 +101,7 @@ devsecops_engine_tools/engine_risk/src/domain/model/gateways/__init__.py,sha256=
101
101
  devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py,sha256=cTm4QSxiaUt7ETCdXWZxKEus8pmEDA3e9k5b39SLDDE,178
102
102
  devsecops_engine_tools/engine_risk/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
103
103
  devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py,sha256=4wqDj-q7hJfJscvrbMDcy7tONqxdxl-CSl_TWTRUGKA,402
104
- devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py,sha256=jXNb0bcpJu0L6eiQ4SAtjai9AoQbeU66fK-IGgup8pk,15324
104
+ devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py,sha256=KjEdbna0eMaIFcAQa36X3p_UFhexk3d4wnBOTK5ZrIU,15552
105
105
  devsecops_engine_tools/engine_risk/src/domain/usecases/check_threshold.py,sha256=VYdmcbAuNNvdHCegRfvza7YJ8FHbFNyDosrKJrMW93I,765
106
106
  devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py,sha256=1UNNq_Yhg3R78jLRSKcMNQYe8T8gl1C31C0ttBF0OAk,3992
107
107
  devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py,sha256=R53fnuIQYfr7YbpMz1BGPJ1d5z9jY_Hnm7EmPt99wlE,3608
@@ -279,7 +279,7 @@ devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/findi
279
279
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py,sha256=3OqfunER_l7j8JkcwEiVVao40GvGtGKcHf5YlPqfjsw,5198
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=pk28H4i2NdJjrXa58K1Me9zX7mjBcO0NrWpArh9bSqE,7508
282
+ devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py,sha256=2zC_9YuV_t0aY5ZGxwNkPC3HHe6knIOiaG4EzN_dCLQ,7492
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
@@ -321,13 +321,13 @@ devsecops_engine_tools/engine_utilities/sbom/deserealizator.py,sha256=6mFNI0B-MB
321
321
  devsecops_engine_tools/engine_utilities/sonarqube/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
322
322
  devsecops_engine_tools/engine_utilities/sonarqube/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
323
323
  devsecops_engine_tools/engine_utilities/sonarqube/src/applications/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
324
- devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py,sha256=ww1unF9CGqkmjWxrvc_LqIaX7gOaZYzoUrzIX3U9K9Y,3901
324
+ devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py,sha256=NYXNgxjH-bzpBB0eOY-kaKX0ZqKyEakw2Khads3tRmo,4099
325
325
  devsecops_engine_tools/engine_utilities/sonarqube/src/domain/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
326
326
  devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
327
327
  devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
328
328
  devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py,sha256=mgycD3bzC_BYv7qT0tMLAro9hyNOvi4gJRzceYNF0t8,1339
329
329
  devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
330
- devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py,sha256=ImJvICOHiFpooBV3whtCqrgupVjwvei6nsy10vUp0z4,10285
330
+ devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py,sha256=tEju0jvpl2pNXZ94Bl_MXfgFBCx3ytO9wB-nOHilR-Q,10632
331
331
  devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
332
332
  devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
333
333
  devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -347,8 +347,8 @@ devsecops_engine_tools/engine_utilities/utils/name_conversion.py,sha256=ADJrRGax
347
347
  devsecops_engine_tools/engine_utilities/utils/printers.py,sha256=amYAr9YQfYgR6jK9a2l26z3oovFPQ3FAKmhq6BKhEBA,623
348
348
  devsecops_engine_tools/engine_utilities/utils/session_manager.py,sha256=Z0fdhB3r-dxU0nGSD9zW_B4r2Qol1rUnUCkhFR0U-HQ,487
349
349
  devsecops_engine_tools/engine_utilities/utils/utils.py,sha256=HCjS900TBoNcHrC4LaiP-Kf9frVdtagF130qOUgnO2M,6757
350
- devsecops_engine_tools-1.51.0.dist-info/METADATA,sha256=StY5b7omHs1t9bYYmp0ytF5KAjcoIVkY4kfYvHYmyZo,11779
351
- devsecops_engine_tools-1.51.0.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
352
- devsecops_engine_tools-1.51.0.dist-info/entry_points.txt,sha256=MHCTFFs9bdNKo6YcWCcBW2_8X6yTisgLOlmVx-V8Rxc,276
353
- devsecops_engine_tools-1.51.0.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
354
- devsecops_engine_tools-1.51.0.dist-info/RECORD,,
350
+ devsecops_engine_tools-1.52.0.dist-info/METADATA,sha256=ptnjHIbFTOQFB6oHTvKr_rN1HdMLvkHffA3Gr79CAkk,11779
351
+ devsecops_engine_tools-1.52.0.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
352
+ devsecops_engine_tools-1.52.0.dist-info/entry_points.txt,sha256=MHCTFFs9bdNKo6YcWCcBW2_8X6yTisgLOlmVx-V8Rxc,276
353
+ devsecops_engine_tools-1.52.0.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
354
+ devsecops_engine_tools-1.52.0.dist-info/RECORD,,