devsecops-engine-tools 1.69.4__py3-none-any.whl → 1.70.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.

@@ -479,6 +479,7 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
479
479
  in tool_scm_conf_mapping
480
480
  else tool_scm_conf_mapping["DEFAULT"]
481
481
  ),
482
+ "sla_configuration": vulnerability_management.config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["TOOL_SLA_MAPPING"],
482
483
  "tags": tags,
483
484
  "version": vulnerability_management.version,
484
485
  "build_id": vulnerability_management.build_id,
@@ -102,9 +102,13 @@ class IacScan:
102
102
  config_tool = ConfigTool(json_data=data_file_tool)
103
103
 
104
104
  config_tool.exclusions = exclusions
105
- config_tool.scope_pipeline = self.devops_platform_gateway.get_variable(
106
- "pipeline_name"
107
- )
105
+ regex_clean = data_file_tool.get("REGEX_CLEAN_END_PIPELINE_NAME")
106
+ config_tool.scope_pipeline = self.devops_platform_gateway.get_variable("pipeline_name")
107
+ if regex_clean:
108
+ pattern = re.compile(regex_clean)
109
+ match = pattern.match(config_tool.scope_pipeline)
110
+ if match:
111
+ config_tool.scope_pipeline = match.group(1)
108
112
 
109
113
  skip_tool = bool(
110
114
  re.match(
@@ -9,6 +9,7 @@ from devsecops_engine_tools.engine_sca.engine_container.src.domain.usecases.set_
9
9
  )
10
10
  from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
11
11
  from devsecops_engine_tools.engine_utilities import settings
12
+ import re
12
13
 
13
14
  logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
14
15
 
@@ -34,6 +35,13 @@ def init_engine_sca_rm(
34
35
  dict_args["remote_config_branch"],
35
36
  )
36
37
  pipeline_name = tool_remote.get_variable("pipeline_name")
38
+ regex_clean = remote_config.get("REGEX_CLEAN_END_PIPELINE_NAME")
39
+ if regex_clean:
40
+ pattern = re.compile(regex_clean)
41
+ match = pattern.match(pipeline_name)
42
+ if match:
43
+ pipeline_name= match.group(1)
44
+
37
45
  handle_remote_config_patterns = HandleRemoteConfigPatterns(
38
46
  remote_config, exclusions, pipeline_name
39
47
  )
@@ -31,6 +31,7 @@ class ImportScanRequest:
31
31
  branch_tag: str = ""
32
32
  commit_hash: str = ""
33
33
  api_scan_configuration: int = 0
34
+ sla_configuration: dict = None
34
35
  test_id: int = 0
35
36
  service: str = ""
36
37
  group_by: str = ""
@@ -197,6 +197,7 @@ class ImportScanSerializer(Schema):
197
197
  branch_tag = fields.Str(required=False)
198
198
  commit_hash = fields.Str(required=False)
199
199
  api_scan_configuration = fields.Int(required=False)
200
+ sla_configuration = fields.Dict(required=False)
200
201
  service = fields.Str(required=False)
201
202
  group_by = fields.Str(required=False)
202
203
  test_title = fields.Str(required=False)
@@ -115,8 +115,8 @@ class CmdbRestConsumer:
115
115
  logger.warning(response)
116
116
  raise ApiError(f"Error querying cmdb: {response.reason}")
117
117
 
118
- if response.json() == []:
119
- logger.warning(f"Engagement: {code_app} not found")
118
+ if response.json() == [] or '[]' in response.text:
119
+ logger.warning(f"Code app: {code_app} not found in CMDB")
120
120
  return cmdb_object # Producto es Orphan
121
121
 
122
122
  data = self.get_nested_data(response, response_format)
@@ -37,8 +37,12 @@ class ProductRestConsumer:
37
37
  "name": request.product_name,
38
38
  "description": "AREA RESPONSABLE TI: " + request.product_description.upper(),
39
39
  "enable_full_risk_acceptance": True,
40
- "prod_type": product_type_id,
40
+ "prod_type": product_type_id
41
41
  }
42
+
43
+ if "Orphan Product" in request.product_description:
44
+ data["sla_configuration"] = request.sla_configuration["ORPHAN"]
45
+
42
46
  headers = {"Authorization": f"Token {self.__token}"}
43
47
  try:
44
48
  response = self.__session.post(url, headers=headers, data=data, verify=VERIFY_CERTIFICATE)
@@ -1 +1 @@
1
- version = '1.69.4'
1
+ version = '1.70.0'
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.1
1
+ Metadata-Version: 2.4
2
2
  Name: devsecops-engine-tools
3
- Version: 1.69.4
3
+ Version: 1.70.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
@@ -18,13 +18,13 @@ Requires-Dist: azure-devops==7.1.0b4
18
18
  Requires-Dist: marshmallow==3.21.3
19
19
  Requires-Dist: pytz==2024.1
20
20
  Requires-Dist: python-decouple==3.8
21
- Requires-Dist: requests-toolbelt==1.0.0
21
+ Requires-Dist: requests_toolbelt==1.0.0
22
22
  Requires-Dist: pexpect==4.9.0
23
23
  Requires-Dist: PyGithub==2.3.0
24
24
  Requires-Dist: distro==1.9.0
25
25
  Requires-Dist: boto3==1.34.157
26
26
  Requires-Dist: docker==7.1.0
27
- Requires-Dist: setuptools==72.1.0
27
+ Requires-Dist: setuptools==78.1.1
28
28
  Requires-Dist: rich==13.9.4
29
29
  Requires-Dist: cpe==1.3.1
30
30
  Requires-Dist: packageurl-python==0.15.6
@@ -33,6 +33,15 @@ Requires-Dist: Authlib==1.3.2
33
33
  Requires-Dist: PyJWT==2.9.0
34
34
  Requires-Dist: sympy==1.13.3
35
35
  Requires-Dist: holidays==0.58
36
+ Dynamic: author
37
+ Dynamic: author-email
38
+ Dynamic: classifier
39
+ Dynamic: description
40
+ Dynamic: description-content-type
41
+ Dynamic: home-page
42
+ Dynamic: requires-dist
43
+ Dynamic: requires-python
44
+ Dynamic: summary
36
45
 
37
46
  # DevSecOps Engine Tools
38
47
 
@@ -76,7 +85,7 @@ pip3 install devsecops-engine-tools
76
85
  ### Scan running - flags (CLI)
77
86
 
78
87
  ```bash
79
- devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_source ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --remote_config_branch ["remote_config_branch"] --module ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --tool ["nuclei", "bearer", "checkov", "kics", "kubescape", "trufflehog", "gitleaks", "prisma", "trivy", "xray", "dependency_check"] --folder_path ["Folder path scan engine_iac, engine_code, engine_dependencies and engine_secret"] --platform ["k8s","cloudformation","docker", "openapi", "terraform"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit","build-scan"] --image_to_scan ["image_to_scan"] --dast_file_path ["dast_file_path"] --terraform_repo_root ["terraform_files_repo"]
88
+ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_source ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --remote_config_branch ["remote_config_branch"] --module ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --tool ["nuclei", "bearer", "checkov", "kics", "kubescape", "trufflehog", "gitleaks", "prisma", "trivy", "xray", "dependency_check"] --folder_path ["Folder path scan engine_iac, engine_code, engine_dependencies and engine_secret"] --platform ["k8s","cloudformation","docker", "openapi", "terraform"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit","build-scan"] --image_to_scan ["image_to_scan"] --dast_file_path ["dast_file_path"] --context ["false", "true"] --terraform_repo_root ["terraform_files_repo"]
80
89
  ```
81
90
 
82
91
  ### Structure Remote Config
@@ -212,9 +221,7 @@ docker run --rm -v ./folder_to_analyze:/folder_to_analyze -v ./custom_remote_con
212
221
 
213
222
  ### Scan running sample - Azure Pipelines
214
223
 
215
- The remote config should be in a Azure Devops repository.
216
-
217
- Note: By default the tool gets the token from the SYSTEM_ACCESSTOKEN variable to get the remote configuration repository. You must ensure that this token has permission to access this resource.
224
+ Note: If the remote configuration is in an Azure Devops repository. the tool gets the token from the SYSTEM_ACCESSTOKEN variable to get the remote configuration repository. You must ensure that this token has permission to access this resource.
218
225
 
219
226
  ```yaml
220
227
  name: $(Build.SourceBranchName).$(date:yyyyMMdd)$(rev:.r)
@@ -245,7 +252,7 @@ stages:
245
252
 
246
253
  ### Scan running sample - Github Actions
247
254
 
248
- The remote config should be in a GitHub repository, either public or private.
255
+ If remote config is in a GitHub repository, either public or private.
249
256
 
250
257
  **If the repository is public:**
251
258
 
@@ -1,5 +1,5 @@
1
1
  devsecops_engine_tools/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- devsecops_engine_tools/version.py,sha256=DQ2H4W1b1JfIFl6MOpNMPhxQc27jiHGxgtP4avMoWm0,19
2
+ devsecops_engine_tools/version.py,sha256=tu5mT7A3YCrI93KSU53K1gF5sJmeOj2sVsMAPRoaImg,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=dKe8hno53uC7JDzRWeBdBeRbDHAasEYLxVaFSvWUVxU,5863
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=5OB8MkkC6seE0ce-Rot2yjj4VGmXBgLSxgiHK0bb1sg,32286
41
+ devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py,sha256=ZjtlXKAhAwHCSJTkA2X0Z-4utoCY6lvipqYJ6gkk6OU,32417
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
@@ -147,7 +147,7 @@ devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/context_iac.py,sh
147
147
  devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
148
148
  devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py,sha256=nFXaAtufDwjdYFl_xSSKCq4hRe6EmUJUCoL0Go0ES8A,314
149
149
  devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
150
- devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py,sha256=hKOs578K8mE-59P6zEaMV0slv4GY-bM9sZGfkz0MqRw,6562
150
+ devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py,sha256=fSEN3V01o5n1fppRpdGrdi55x-Cn0LBIo9sJJPEAzG0,6828
151
151
  devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
152
152
  devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
153
153
  devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -217,7 +217,7 @@ devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_ada
217
217
  devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py,sha256=f74mfDkzA7MD7QsaG-LDbcc2fX9nMvHHp-AkrcBg-h0,5294
218
218
  devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py,sha256=7hGrUU37ZqZKHfkiNX2YrhIlDna8XnhJ3F7ONhneexs,5105
219
219
  devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
220
- devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py,sha256=RDPblK3DP6tooyBKNfkxlb6_71Kri1Dxl8nY7gI-Yv4,2810
220
+ devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py,sha256=MCBVnUxfjnax2stjn9ByM0Hy9LQ9vAMK9GZkOk3ex9M,3077
221
221
  devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
222
222
  devsecops_engine_tools/engine_sca/engine_dependencies/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
223
223
  devsecops_engine_tools/engine_sca/engine_dependencies/src/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -279,10 +279,10 @@ devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_l
279
279
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py,sha256=-uVxaTkxnDmUUGQUdN9x_VKR8KJUagJKnGR6B1emoEU,577
280
280
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
281
281
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py,sha256=RinG3ISc-u_3VXVqntwdcQvZoQdmHPCvDHWSvnkCkcU,2619
282
- devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py,sha256=HVztT9mZoosfQp_vFC-fLnFHnEswqNdd2SlJUUk8B58,5281
282
+ devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py,sha256=n-fvv5QzqGzOqZs1ScbjvhVSycz7STet4GR2JWCJWe4,5317
283
283
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
284
284
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py,sha256=4IQLjqgyImVdn8AxoU3UKgXnvU-F-x7Tm2bJdp6nHm4,5265
285
- devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py,sha256=u66r-Dahak82bBCf8qMz5mEboWuCC52IjZo36jO4c4k,7623
285
+ devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py,sha256=XYhtsDaxPb_-cS-BTgOX22eOmXY1T8FjqZTcrS5ISqA,7676
286
286
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
287
287
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py,sha256=BUOdvP39bEMQ6Unr2hB28eljVGU2Uv8dDEkzRyEJgyQ,2650
288
288
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/component.py,sha256=_icc-ZAqw-aVgE5J4VH8Q7fSqpCgEGcfmurgRIN9NqM,448
@@ -293,13 +293,13 @@ devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan
293
293
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/product.py,sha256=6f6eABdC79zOopMe_Rif3XoGG-yFfq9x_EOkevTuGDY,368
294
294
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
295
295
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
296
- devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py,sha256=4F64rEQLwB-GsKmR5mnV3uMxVhV7VBHNdthN3fcvVGI,7029
296
+ devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py,sha256=ws25XIKcctsWi0S3nJ8ThEfZUMAa5P_PidHynN1HbXw,7060
297
297
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/component.py,sha256=-J0Sv7z709Hctb-tgM0wmp5ofE4WKEIA_uJwzvMnStE,2132
298
298
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py,sha256=E6ilSQLOcJeBGYn_XXzJimUdi3l9vo0FpN1FhdNJV58,3866
299
299
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py,sha256=k-z2tg_NPKMni7rZgXMZa2-t8_8F35r8YtF1EcjMyDs,2355
300
300
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding_exclusion.py,sha256=BL4xf1FE5tMsBri0LetxBRUgOgLogdoHX97rQkHh10g,1524
301
301
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py,sha256=uZqPM9sOyclq8q-uKRWUY9qR67SzpIzirM6T7KMkYZ4,6515
302
- devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py,sha256=DhiLPv8KyRhHBRhvF0ULhchhGAT8SQyn1ftiuou_aKw,2576
302
+ devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py,sha256=8QksbPReWWuKoRrY9Grzl7XlpMsxfEt8EYYP_K0Nz0U,2725
303
303
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py,sha256=x-Gh2BEP6IZccS2m_DLB8xI6aEkS19J0ZUpP2mjY88o,3078
304
304
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py,sha256=zTGOUJ4BFoF7aFTsuiecme2NAzJ_SWnnfS6mIsFWoVo,3122
305
305
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -352,8 +352,8 @@ devsecops_engine_tools/engine_utilities/utils/name_conversion.py,sha256=ADJrRGax
352
352
  devsecops_engine_tools/engine_utilities/utils/printers.py,sha256=amYAr9YQfYgR6jK9a2l26z3oovFPQ3FAKmhq6BKhEBA,623
353
353
  devsecops_engine_tools/engine_utilities/utils/session_manager.py,sha256=Z0fdhB3r-dxU0nGSD9zW_B4r2Qol1rUnUCkhFR0U-HQ,487
354
354
  devsecops_engine_tools/engine_utilities/utils/utils.py,sha256=HCjS900TBoNcHrC4LaiP-Kf9frVdtagF130qOUgnO2M,6757
355
- devsecops_engine_tools-1.69.4.dist-info/METADATA,sha256=j0xoWbm8a_L58JPsy0FAPS7I966BCVARZN-ulMPDE0E,12052
356
- devsecops_engine_tools-1.69.4.dist-info/WHEEL,sha256=R0nc6qTxuoLk7ShA2_Y-UWkN8ZdfDBG2B6Eqpz2WXbs,91
357
- devsecops_engine_tools-1.69.4.dist-info/entry_points.txt,sha256=MHCTFFs9bdNKo6YcWCcBW2_8X6yTisgLOlmVx-V8Rxc,276
358
- devsecops_engine_tools-1.69.4.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
359
- devsecops_engine_tools-1.69.4.dist-info/RECORD,,
355
+ devsecops_engine_tools-1.70.0.dist-info/METADATA,sha256=9hgZNaDzZuahyGfj8wnwybNDIyeESvTOBDnySOHMiFI,12261
356
+ devsecops_engine_tools-1.70.0.dist-info/WHEEL,sha256=lTU6B6eIfYoiQJTZNc-fyaR6BpL6ehTzU3xGYxn2n8k,91
357
+ devsecops_engine_tools-1.70.0.dist-info/entry_points.txt,sha256=MHCTFFs9bdNKo6YcWCcBW2_8X6yTisgLOlmVx-V8Rxc,276
358
+ devsecops_engine_tools-1.70.0.dist-info/top_level.txt,sha256=ge6y0X_xBAU1aG3EMWFtl9djbVyg5BxuSp2r2Lg6EQU,23
359
+ devsecops_engine_tools-1.70.0.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (72.1.0)
2
+ Generator: setuptools (78.1.1)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5