devsecops-engine-tools 1.6.7__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.

Files changed (231) hide show
  1. devsecops_engine_tools/__init__.py +0 -0
  2. devsecops_engine_tools/engine_core/__init__.py +0 -0
  3. devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  4. devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  5. devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +124 -0
  6. devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  7. devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  8. devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  9. devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  10. devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +9 -0
  11. devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +14 -0
  12. devsecops_engine_tools/engine_core/src/domain/model/finding.py +20 -0
  13. devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  14. devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +27 -0
  15. devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +7 -0
  16. devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +13 -0
  17. devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +7 -0
  18. devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +17 -0
  19. devsecops_engine_tools/engine_core/src/domain/model/input_core.py +12 -0
  20. devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +3 -0
  21. devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +7 -0
  22. devsecops_engine_tools/engine_core/src/domain/model/threshold.py +12 -0
  23. devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +20 -0
  24. devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  25. devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +375 -0
  26. devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +148 -0
  27. devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +59 -0
  28. devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  29. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  30. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  31. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +52 -0
  32. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +40 -0
  33. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  34. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +103 -0
  35. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  36. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +215 -0
  37. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  38. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +84 -0
  39. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/__init__.py +0 -0
  40. devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +71 -0
  41. devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py +0 -0
  42. devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +50 -0
  43. devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py +0 -0
  44. devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +9 -0
  45. devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +15 -0
  46. devsecops_engine_tools/engine_dast/__init__.py +0 -0
  47. devsecops_engine_tools/engine_dast/src/__init__.py +0 -0
  48. devsecops_engine_tools/engine_dast/src/applications/__init__.py +0 -0
  49. devsecops_engine_tools/engine_dast/src/deployment/__init__.py +0 -0
  50. devsecops_engine_tools/engine_dast/src/deployment/infrastructure/__init__.py +0 -0
  51. devsecops_engine_tools/engine_dast/src/domain/__init__.py +0 -0
  52. devsecops_engine_tools/engine_dast/src/domain/model/__init__.py +0 -0
  53. devsecops_engine_tools/engine_dast/src/domain/usecases/__init__.py +0 -0
  54. devsecops_engine_tools/engine_dast/src/infrastructure/__init__.py +0 -0
  55. devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/__init__.py +0 -0
  56. devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/__init__.py +0 -0
  57. devsecops_engine_tools/engine_dast/src/infrastructure/helpers/__init__.py +0 -0
  58. devsecops_engine_tools/engine_sast/__init__.py +0 -0
  59. devsecops_engine_tools/engine_sast/engine_iac/__init__.py +0 -0
  60. devsecops_engine_tools/engine_sast/engine_iac/src/__init__.py +0 -0
  61. devsecops_engine_tools/engine_sast/engine_iac/src/applications/__init__.py +0 -0
  62. devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +30 -0
  63. devsecops_engine_tools/engine_sast/engine_iac/src/deployment/__init__.py +0 -0
  64. devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure/__init__.py +0 -0
  65. devsecops_engine_tools/engine_sast/engine_iac/src/domain/__init__.py +0 -0
  66. devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/__init__.py +0 -0
  67. devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +24 -0
  68. devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/__init__.py +0 -0
  69. devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +6 -0
  70. devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/__init__.py +0 -0
  71. devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +130 -0
  72. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/__init__.py +0 -0
  73. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/__init__.py +0 -0
  74. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/__init__.py +0 -0
  75. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +135 -0
  76. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +35 -0
  77. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +195 -0
  78. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/__init__.py +0 -0
  79. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +6 -0
  80. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/__init__.py +0 -0
  81. devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +74 -0
  82. devsecops_engine_tools/engine_sast/engine_secret/__init__.py +0 -0
  83. devsecops_engine_tools/engine_sast/engine_secret/src/__init__.py +0 -0
  84. devsecops_engine_tools/engine_sast/engine_secret/src/applications/__init__.py +0 -0
  85. devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +34 -0
  86. devsecops_engine_tools/engine_sast/engine_secret/src/deployment/__init__.py +0 -0
  87. devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure/__init__.py +0 -0
  88. devsecops_engine_tools/engine_sast/engine_secret/src/domain/__init__.py +0 -0
  89. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/DeserializeConfigTool.py +11 -0
  90. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/__init__.py +0 -0
  91. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/__init__.py +0 -0
  92. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +11 -0
  93. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/git_gateway.py +15 -0
  94. devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +16 -0
  95. devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/__init__.py +0 -0
  96. devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +72 -0
  97. devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +73 -0
  98. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/__init__.py +0 -0
  99. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/__init__.py +0 -0
  100. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/git_cli/__init__.py +0 -0
  101. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/git_cli/git_run.py +60 -0
  102. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/__init__.py +0 -0
  103. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +39 -0
  104. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +104 -0
  105. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/__init__.py +0 -0
  106. devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +11 -0
  107. devsecops_engine_tools/engine_sca/__init__.py +0 -0
  108. devsecops_engine_tools/engine_sca/engine_container/__init__.py +0 -0
  109. devsecops_engine_tools/engine_sca/engine_container/src/__init__.py +0 -0
  110. devsecops_engine_tools/engine_sca/engine_container/src/applications/__init__.py +0 -0
  111. devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +45 -0
  112. devsecops_engine_tools/engine_sca/engine_container/src/deployment/__init__.py +0 -0
  113. devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure/__init__.py +0 -0
  114. devsecops_engine_tools/engine_sca/engine_container/src/domain/__init__.py +0 -0
  115. devsecops_engine_tools/engine_sca/engine_container/src/domain/model/__init__.py +0 -0
  116. devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/__init__.py +0 -0
  117. devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +8 -0
  118. devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +7 -0
  119. devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +7 -0
  120. devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/__init__.py +0 -0
  121. devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +82 -0
  122. devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +67 -0
  123. devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +76 -0
  124. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/__init__.py +0 -0
  125. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/__init__.py +0 -0
  126. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/__init__.py +0 -0
  127. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +22 -0
  128. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/__init__.py +0 -0
  129. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +123 -0
  130. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +62 -0
  131. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/__init__.py +0 -0
  132. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py +48 -0
  133. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +114 -0
  134. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/__init__.py +0 -0
  135. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +40 -0
  136. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers/__init__.py +0 -0
  137. devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers/images_scanned.py +16 -0
  138. devsecops_engine_tools/engine_sca/engine_dependencies/__init__.py +0 -0
  139. devsecops_engine_tools/engine_sca/engine_dependencies/src/__init__.py +0 -0
  140. devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/__init__.py +0 -0
  141. devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +32 -0
  142. devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/__init__.py +0 -0
  143. devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure/__init__.py +0 -0
  144. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/__init__.py +0 -0
  145. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/__init__.py +0 -0
  146. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/__init__.py +0 -0
  147. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +8 -0
  148. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +9 -0
  149. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/__init__.py +0 -0
  150. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +44 -0
  151. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/find_artifacts.py +95 -0
  152. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/find_mono_repos.py +29 -0
  153. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +90 -0
  154. devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +65 -0
  155. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/__init__.py +0 -0
  156. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/__init__.py +0 -0
  157. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/__init__.py +0 -0
  158. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +57 -0
  159. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +154 -0
  160. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/__init__.py +0 -0
  161. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +83 -0
  162. devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/__init__.py +0 -0
  163. devsecops_engine_tools/engine_utilities/__init__.py +0 -0
  164. devsecops_engine_tools/engine_utilities/azuredevops/__init__.py +0 -0
  165. devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/__init__.py +0 -0
  166. devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +67 -0
  167. devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +21 -0
  168. devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +65 -0
  169. devsecops_engine_tools/engine_utilities/azuredevops/models/__init__.py +0 -0
  170. devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +5 -0
  171. devsecops_engine_tools/engine_utilities/defect_dojo/applications/__init__.py +0 -0
  172. devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +37 -0
  173. devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +40 -0
  174. devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +40 -0
  175. devsecops_engine_tools/engine_utilities/defect_dojo/domain/__init__.py +0 -0
  176. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/__init__.py +0 -0
  177. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +11 -0
  178. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +55 -0
  179. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +96 -0
  180. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +35 -0
  181. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +12 -0
  182. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +16 -0
  183. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +13 -0
  184. devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +21 -0
  185. devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/__init__.py +0 -0
  186. devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +95 -0
  187. devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +125 -0
  188. devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/__init__.py +0 -0
  189. devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +100 -0
  190. devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +223 -0
  191. devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/__init__.py +0 -0
  192. devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +59 -0
  193. devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +38 -0
  194. devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +133 -0
  195. devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py +2 -0
  196. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/__init__.py +0 -0
  197. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/__init__.py +0 -0
  198. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +55 -0
  199. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +55 -0
  200. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +37 -0
  201. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +115 -0
  202. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +50 -0
  203. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +59 -0
  204. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +65 -0
  205. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/__init__.py +0 -0
  206. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +1 -0
  207. devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository/__init__.py +0 -0
  208. devsecops_engine_tools/engine_utilities/github/__init__.py +0 -0
  209. devsecops_engine_tools/engine_utilities/github/infrastructure/__init__.py +0 -0
  210. devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +49 -0
  211. devsecops_engine_tools/engine_utilities/github/models/__init__.py +0 -0
  212. devsecops_engine_tools/engine_utilities/input_validations/__init__.py +0 -0
  213. devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +10 -0
  214. devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +8 -0
  215. devsecops_engine_tools/engine_utilities/settings.py +38 -0
  216. devsecops_engine_tools/engine_utilities/ssh/__init__.py +0 -0
  217. devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +67 -0
  218. devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  219. devsecops_engine_tools/engine_utilities/utils/api_error.py +14 -0
  220. devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +84 -0
  221. devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +10 -0
  222. devsecops_engine_tools/engine_utilities/utils/logger_info.py +109 -0
  223. devsecops_engine_tools/engine_utilities/utils/name_conversion.py +12 -0
  224. devsecops_engine_tools/engine_utilities/utils/printers.py +21 -0
  225. devsecops_engine_tools/engine_utilities/utils/session_manager.py +14 -0
  226. devsecops_engine_tools/version.py +1 -0
  227. devsecops_engine_tools-1.6.7.dist-info/METADATA +156 -0
  228. devsecops_engine_tools-1.6.7.dist-info/RECORD +231 -0
  229. devsecops_engine_tools-1.6.7.dist-info/WHEEL +5 -0
  230. devsecops_engine_tools-1.6.7.dist-info/entry_points.txt +2 -0
  231. devsecops_engine_tools-1.6.7.dist-info/top_level.txt +1 -0
File without changes
File without changes
File without changes
@@ -0,0 +1,124 @@
1
+ from devsecops_engine_tools.engine_core.src.infrastructure.entry_points.entry_point_core import (
2
+ init_engine_core,
3
+ )
4
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.defect_dojo.defect_dojo import (
5
+ DefectDojoPlatform,
6
+ )
7
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.secrets_manager import (
8
+ SecretsManager,
9
+ )
10
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.azure.azure_devops import (
11
+ AzureDevops,
12
+ )
13
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.runtime_local.runtime_local import (
14
+ RuntimeLocal,
15
+ )
16
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.aws.s3_manager import (
17
+ S3Manager,
18
+ )
19
+ from devsecops_engine_tools.engine_core.src.infrastructure.driven_adapters.printer_pretty_table.printer_pretty_table import (
20
+ PrinterPrettyTable,
21
+ )
22
+ import sys
23
+ import argparse
24
+ from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
25
+ from devsecops_engine_tools.engine_utilities import settings
26
+ from devsecops_engine_tools.version import version
27
+
28
+
29
+ logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
30
+
31
+ def get_inputs_from_cli(args):
32
+ parser = argparse.ArgumentParser()
33
+ parser.add_argument("-v", "--version", action='version', version='{version}'.format(version=version))
34
+ parser.add_argument("-pd", "--platform_devops", choices=["azure", "local"], type=str, required=True, help="Platform where is executed")
35
+ parser.add_argument("-rcf" ,"--remote_config_repo", type=str, required=True, help="Name or Folder Path of Config Repo")
36
+ parser.add_argument("-t",
37
+ "--tool",
38
+ choices=[
39
+ "engine_iac",
40
+ "engine_dast",
41
+ "engine_secret",
42
+ "engine_dependencies",
43
+ "engine_container",
44
+ ],
45
+ type=str,
46
+ required=True,
47
+ help="Tool to execute",
48
+ )
49
+ parser.add_argument("-fp", "--folder_path", type=str, required=False, help="Folder Path to scan, only apply engine_iac tool")
50
+ parser.add_argument("-p",
51
+ "--platform", choices=["eks", "openshift"], type=str, required=False, help="Platform to execute, only apply engine_iac tool"
52
+ )
53
+ parser.add_argument(
54
+ "--use_secrets_manager",
55
+ choices=["true", "false"],
56
+ type=str,
57
+ required=False,
58
+ help="Use Secrets Manager to get the tokens",
59
+ )
60
+ parser.add_argument(
61
+ "--use_vulnerability_management",
62
+ choices=["true", "false"],
63
+ type=str,
64
+ required=False,
65
+ help="Use Vulnerability Management to send the vulnerabilities to the platform",
66
+ )
67
+ parser.add_argument(
68
+ "--send_metrics",
69
+ choices=["true", "false"],
70
+ type=str,
71
+ required=False,
72
+ help="Enable or Disable the send metrics to the driven adapter metrics",
73
+ )
74
+ parser.add_argument("--token_cmdb", required=False, help="Token to connect to the CMDB")
75
+ parser.add_argument("--token_vulnerability_management", required=False, help="Token to connect to the Vulnerability Management")
76
+ parser.add_argument("--token_engine_container", required=False, help="Token to execute engine_container if is necessary")
77
+ parser.add_argument("--token_engine_dependencies", required=False, help="Token to execute engine_dependencies if is necessary")
78
+ args = parser.parse_args()
79
+ return {
80
+ "platform_devops": args.platform_devops,
81
+ "remote_config_repo": args.remote_config_repo,
82
+ "tool": args.tool,
83
+ "folder_path": args.folder_path,
84
+ "platform": args.platform,
85
+ "use_secrets_manager": args.use_secrets_manager,
86
+ "use_vulnerability_management": args.use_vulnerability_management,
87
+ "send_metrics": args.send_metrics,
88
+ "token_cmdb": args.token_cmdb,
89
+ "token_vulnerability_management": args.token_vulnerability_management,
90
+ "token_engine_container": args.token_engine_container,
91
+ "token_engine_dependencies": args.token_engine_dependencies,
92
+ }
93
+
94
+ def application_core():
95
+ try:
96
+ # Get inputs from CLI
97
+ args = get_inputs_from_cli(sys.argv[1:])
98
+
99
+ # Define driven adapters for gateways
100
+ vulnerability_management_gateway = DefectDojoPlatform()
101
+ secrets_manager_gateway = SecretsManager()
102
+ devops_platform_gateway = AzureDevops() if args["platform_devops"] == "azure" else RuntimeLocal()
103
+ printer_table_gateway = PrinterPrettyTable()
104
+ metrics_manager_gateway = S3Manager()
105
+
106
+ init_engine_core(
107
+ vulnerability_management_gateway,
108
+ secrets_manager_gateway,
109
+ devops_platform_gateway,
110
+ printer_table_gateway,
111
+ metrics_manager_gateway,
112
+ args
113
+ )
114
+ except Exception as e:
115
+ logger.error("Error SCAN: {0} ".format(str(e)))
116
+ print(
117
+ devops_platform_gateway.message(
118
+ "error", "Error SCAN: {0} ".format(str(e))
119
+ )
120
+ )
121
+ print(devops_platform_gateway.result_pipeline("failed"))
122
+
123
+ if __name__ == "__main__":
124
+ application_core()
@@ -0,0 +1,9 @@
1
+ class ExceptionVulnerabilityManagement(Exception):
2
+ def __init__(self, message):
3
+ self.message = message
4
+ super().__init__(self.message)
5
+
6
+ class ExceptionFindingsExcepted(Exception):
7
+ def __init__(self, message):
8
+ self.message = message
9
+ super().__init__(self.message)
@@ -0,0 +1,14 @@
1
+ from dataclasses import dataclass
2
+
3
+
4
+ @dataclass
5
+ class Exclusions:
6
+ def __init__(self, **kwargs):
7
+ self.id = kwargs.get("id", "")
8
+ self.where = kwargs.get("where", "")
9
+ self.cve_id = kwargs.get("cve_id", "")
10
+ self.create_date = kwargs.get("create_date", "")
11
+ self.expired_date = kwargs.get("expired_date", "")
12
+ self.severity = kwargs.get("severity", "")
13
+ self.hu = kwargs.get("hu", "")
14
+ self.reason = kwargs.get("reason", "Risk acceptance")
@@ -0,0 +1,20 @@
1
+ from enum import Enum
2
+ from dataclasses import dataclass
3
+
4
+ class Category(Enum):
5
+ VULNERABILITY = "vulnerability"
6
+ COMPLIANCE = "compliance"
7
+
8
+ @dataclass
9
+ class Finding:
10
+ id: str
11
+ cvss: str
12
+ where: str
13
+ description: str
14
+ severity: str
15
+ identification_date: str
16
+ published_date_cve: str
17
+ module: str
18
+ category: Category
19
+ requirements: str
20
+ tool: str
@@ -0,0 +1,27 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class DevopsPlatformGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def get_remote_config(self, repository, path):
7
+ "get_remote_config"
8
+
9
+ @abstractmethod
10
+ def message(self, type, message):
11
+ "message"
12
+
13
+ @abstractmethod
14
+ def result_pipeline(self, type):
15
+ "result_pipeline"
16
+
17
+ @abstractmethod
18
+ def get_source_code_management_uri(self):
19
+ "get_source_code_management_uri"
20
+
21
+ @abstractmethod
22
+ def get_base_compact_remote_config_url(self, remote_config_repo):
23
+ "get_base_compact_remote_config_url"
24
+
25
+ @abstractmethod
26
+ def get_variable(self, variable):
27
+ "get_variable"
@@ -0,0 +1,7 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class MetricsManagerGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def send_metrics(self, config_tool, tool, file_path):
7
+ "send_metrics"
@@ -0,0 +1,13 @@
1
+ from abc import ABCMeta, abstractmethod
2
+ from devsecops_engine_tools.engine_core.src.domain.model.finding import (
3
+ Finding,
4
+ )
5
+
6
+ class PrinterTableGateway(metaclass=ABCMeta):
7
+ @abstractmethod
8
+ def print_table_findings(self, finding_list: "list[Finding]"):
9
+ "print_table_findings"
10
+
11
+ @abstractmethod
12
+ def print_table_exclusions(self, exclusions_list):
13
+ "print_table_exclusions"
@@ -0,0 +1,7 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class SecretsManagerGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def get_secret(self, config_tool):
7
+ "get_secret"
@@ -0,0 +1,17 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+ from devsecops_engine_tools.engine_core.src.domain.model.vulnerability_management import VulnerabilityManagement
4
+
5
+
6
+ class VulnerabilityManagementGateway(metaclass=ABCMeta):
7
+ @abstractmethod
8
+ def send_vulnerability_management(
9
+ self, vulnerability_management: VulnerabilityManagement
10
+ ):
11
+ "send_vulnerability_management"
12
+
13
+ @abstractmethod
14
+ def get_findings_excepted(
15
+ self, service, dict_args, secret_tool, config_tool
16
+ ):
17
+ "get_findings_excepted"
@@ -0,0 +1,12 @@
1
+ from dataclasses import dataclass
2
+ from devsecops_engine_tools.engine_core.src.domain.model.exclusions import Exclusions
3
+ from devsecops_engine_tools.engine_core.src.domain.model.threshold import Threshold
4
+
5
+ @dataclass
6
+ class InputCore:
7
+ totalized_exclusions: "list[Exclusions]"
8
+ threshold_defined: Threshold
9
+ path_file_results: str
10
+ custom_message_break_build: str
11
+ scope_pipeline: str
12
+ stage_pipeline: str
@@ -0,0 +1,3 @@
1
+ class LevelCompliance:
2
+ def __init__(self, data):
3
+ self.critical = data.get("Critical")
@@ -0,0 +1,7 @@
1
+ class LevelVulnerability:
2
+ def __init__(self, data):
3
+ self.critical = data.get("Critical")
4
+ self.high = data.get("High")
5
+ self.medium = data.get("Medium")
6
+ self.low = data.get("Low")
7
+ self.unknown = data.get("Unknown")
@@ -0,0 +1,12 @@
1
+ from devsecops_engine_tools.engine_core.src.domain.model.level_vulnerability import (
2
+ LevelVulnerability,
3
+ )
4
+ from devsecops_engine_tools.engine_core.src.domain.model.level_compliance import (
5
+ LevelCompliance,
6
+ )
7
+
8
+ class Threshold:
9
+ def __init__(self, data):
10
+ self.vulnerability = LevelVulnerability(data.get("VULNERABILITY"))
11
+ self.compliance = LevelCompliance(data.get("COMPLIANCE"))
12
+ self.cve = data.get("CVE",[])
@@ -0,0 +1,20 @@
1
+ from dataclasses import dataclass
2
+
3
+ from devsecops_engine_tools.engine_core.src.domain.model.input_core import InputCore
4
+
5
+
6
+ @dataclass
7
+ class VulnerabilityManagement:
8
+ scan_type: str
9
+ input_core: InputCore
10
+ dict_args: any
11
+ secret_tool: any
12
+ config_tool: any
13
+ source_code_management_uri: str
14
+ base_compact_remote_config_url: str
15
+ access_token: str
16
+ version: str
17
+ build_id: str
18
+ branch_tag: str
19
+ commit_hash: str
20
+ environment: str