devsecops-engine-tools 1.8.10__tar.gz → 1.8.12__tar.gz

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 (272) hide show
  1. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/PKG-INFO +1 -1
  2. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +5 -0
  3. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +6 -0
  4. devsecops_engine_tools-1.8.12/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +178 -0
  5. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +28 -0
  6. devsecops_engine_tools-1.8.12/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/git_gateway.py +11 -0
  7. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +1 -2
  8. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +2 -8
  9. devsecops_engine_tools-1.8.12/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/git_cli/git_run.py +41 -0
  10. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +3 -6
  11. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +1 -0
  12. devsecops_engine_tools-1.8.12/devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py +16 -0
  13. devsecops_engine_tools-1.8.12/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py +9 -0
  14. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +41 -10
  15. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +7 -0
  16. devsecops_engine_tools-1.8.12/devsecops_engine_tools/version.py +1 -0
  17. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/PKG-INFO +1 -1
  18. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/SOURCES.txt +2 -0
  19. devsecops_engine_tools-1.8.10/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +0 -101
  20. devsecops_engine_tools-1.8.10/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/git_gateway.py +0 -15
  21. devsecops_engine_tools-1.8.10/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/git_cli/git_run.py +0 -75
  22. devsecops_engine_tools-1.8.10/devsecops_engine_tools/version.py +0 -1
  23. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/README.md +0 -0
  24. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/__init__.py +0 -0
  25. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/__init__.py +0 -0
  26. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  27. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  28. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +0 -0
  29. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  30. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  31. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  32. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  33. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +0 -0
  34. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/finding.py +0 -0
  35. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  36. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +0 -0
  37. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +0 -0
  38. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +0 -0
  39. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +0 -0
  40. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/input_core.py +0 -0
  41. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +0 -0
  42. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +0 -0
  43. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/report.py +0 -0
  44. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/threshold.py +0 -0
  45. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +0 -0
  46. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  47. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +0 -0
  48. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +0 -0
  49. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +0 -0
  50. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  51. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  52. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  53. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +0 -0
  54. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +0 -0
  55. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  56. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +0 -0
  57. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  58. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py +0 -0
  59. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py +0 -0
  60. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  61. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +0 -0
  62. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/__init__.py +0 -0
  63. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +0 -0
  64. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py +0 -0
  65. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +0 -0
  66. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py +0 -0
  67. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +0 -0
  68. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +0 -0
  69. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/__init__.py +0 -0
  70. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/__init__.py +0 -0
  71. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/applications/__init__.py +0 -0
  72. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/deployment/__init__.py +0 -0
  73. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/deployment/infrastructure/__init__.py +0 -0
  74. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/domain/__init__.py +0 -0
  75. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/domain/model/__init__.py +0 -0
  76. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/domain/usecases/__init__.py +0 -0
  77. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/infrastructure/__init__.py +0 -0
  78. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/__init__.py +0 -0
  79. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/__init__.py +0 -0
  80. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/__init__.py +0 -0
  81. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/__init__.py +0 -0
  82. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/__init__.py +0 -0
  83. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/applications/__init__.py +0 -0
  84. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/applications/runner_engine_risk.py +0 -0
  85. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/deployment/__init__.py +0 -0
  86. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/deployment/infrastructure/__init__.py +0 -0
  87. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/__init__.py +0 -0
  88. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/model/__init__.py +0 -0
  89. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/__init__.py +0 -0
  90. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py +0 -0
  91. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/usecases/__init__.py +0 -0
  92. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py +0 -0
  93. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py +0 -0
  94. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py +0 -0
  95. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +0 -0
  96. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/__init__.py +0 -0
  97. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/__init__.py +0 -0
  98. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/__init__.py +0 -0
  99. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/first_epss_csv.py +0 -0
  100. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/__init__.py +0 -0
  101. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/entry_point_risk.py +0 -0
  102. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_risk/src/infrastructure/helpers/__init__.py +0 -0
  103. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/__init__.py +0 -0
  104. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/__init__.py +0 -0
  105. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/__init__.py +0 -0
  106. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/__init__.py +0 -0
  107. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +0 -0
  108. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/__init__.py +0 -0
  109. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure/__init__.py +0 -0
  110. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/__init__.py +0 -0
  111. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/__init__.py +0 -0
  112. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +0 -0
  113. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/__init__.py +0 -0
  114. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +0 -0
  115. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/__init__.py +0 -0
  116. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +0 -0
  117. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/__init__.py +0 -0
  118. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/__init__.py +0 -0
  119. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/__init__.py +0 -0
  120. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +0 -0
  121. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +0 -0
  122. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +0 -0
  123. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/__init__.py +0 -0
  124. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +0 -0
  125. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +0 -0
  126. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/__init__.py +0 -0
  127. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py +0 -0
  128. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py +0 -0
  129. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/__init__.py +0 -0
  130. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  131. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/__init__.py +0 -0
  132. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +0 -0
  133. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/__init__.py +0 -0
  134. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/__init__.py +0 -0
  135. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/__init__.py +0 -0
  136. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +0 -0
  137. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/__init__.py +0 -0
  138. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure/__init__.py +0 -0
  139. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/__init__.py +0 -0
  140. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/DeserializeConfigTool.py +0 -0
  141. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/__init__.py +0 -0
  142. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/__init__.py +0 -0
  143. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +0 -0
  144. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/__init__.py +0 -0
  145. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +0 -0
  146. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/__init__.py +0 -0
  147. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/__init__.py +0 -0
  148. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/git_cli/__init__.py +0 -0
  149. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/__init__.py +0 -0
  150. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +0 -0
  151. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/__init__.py +0 -0
  152. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  153. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/__init__.py +0 -0
  154. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/__init__.py +0 -0
  155. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/__init__.py +0 -0
  156. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/applications/__init__.py +0 -0
  157. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +0 -0
  158. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/deployment/__init__.py +0 -0
  159. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure/__init__.py +0 -0
  160. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/__init__.py +0 -0
  161. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/__init__.py +0 -0
  162. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/__init__.py +0 -0
  163. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +0 -0
  164. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +0 -0
  165. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +0 -0
  166. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/__init__.py +0 -0
  167. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +0 -0
  168. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  169. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +0 -0
  170. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/__init__.py +0 -0
  171. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/__init__.py +0 -0
  172. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/__init__.py +0 -0
  173. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +0 -0
  174. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/__init__.py +0 -0
  175. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +0 -0
  176. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +0 -0
  177. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/__init__.py +0 -0
  178. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py +0 -0
  179. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  180. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/__init__.py +0 -0
  181. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  182. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers/__init__.py +0 -0
  183. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/__init__.py +0 -0
  184. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/__init__.py +0 -0
  185. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/__init__.py +0 -0
  186. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +0 -0
  187. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/__init__.py +0 -0
  188. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure/__init__.py +0 -0
  189. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/__init__.py +0 -0
  190. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/__init__.py +0 -0
  191. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/__init__.py +0 -0
  192. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +0 -0
  193. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +0 -0
  194. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/__init__.py +0 -0
  195. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +0 -0
  196. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  197. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +0 -0
  198. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/__init__.py +0 -0
  199. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/__init__.py +0 -0
  200. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/__init__.py +0 -0
  201. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +0 -0
  202. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +0 -0
  203. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/__init__.py +0 -0
  204. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  205. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/__init__.py +0 -0
  206. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/__init__.py +0 -0
  207. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/__init__.py +0 -0
  208. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/__init__.py +0 -0
  209. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +0 -0
  210. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +0 -0
  211. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +0 -0
  212. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/azuredevops/models/__init__.py +0 -0
  213. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/__init__.py +0 -0
  214. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +0 -0
  215. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +0 -0
  216. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +0 -0
  217. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/__init__.py +0 -0
  218. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/__init__.py +0 -0
  219. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +0 -0
  220. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +0 -0
  221. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +0 -0
  222. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +0 -0
  223. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +0 -0
  224. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +0 -0
  225. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +0 -0
  226. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +0 -0
  227. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/__init__.py +0 -0
  228. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +0 -0
  229. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +0 -0
  230. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/__init__.py +0 -0
  231. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +0 -0
  232. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +0 -0
  233. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/__init__.py +0 -0
  234. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +0 -0
  235. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +0 -0
  236. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +0 -0
  237. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py +0 -0
  238. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/__init__.py +0 -0
  239. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/__init__.py +0 -0
  240. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +0 -0
  241. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +0 -0
  242. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +0 -0
  243. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +0 -0
  244. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +0 -0
  245. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/__init__.py +0 -0
  246. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +0 -0
  247. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository/__init__.py +0 -0
  248. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/github/__init__.py +0 -0
  249. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/github/infrastructure/__init__.py +0 -0
  250. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +0 -0
  251. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/github/models/GithubPredefinedVariables.py +0 -0
  252. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/github/models/__init__.py +0 -0
  253. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/input_validations/__init__.py +0 -0
  254. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +0 -0
  255. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +0 -0
  256. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/settings.py +0 -0
  257. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/ssh/__init__.py +0 -0
  258. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +0 -0
  259. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  260. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/api_error.py +0 -0
  261. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +0 -0
  262. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +0 -0
  263. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/logger_info.py +0 -0
  264. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/name_conversion.py +0 -0
  265. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/printers.py +0 -0
  266. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools/engine_utilities/utils/session_manager.py +0 -0
  267. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/dependency_links.txt +0 -0
  268. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/entry_points.txt +0 -0
  269. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/requires.txt +0 -0
  270. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/devsecops_engine_tools.egg-info/top_level.txt +0 -0
  271. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/setup.cfg +0 -0
  272. {devsecops_engine_tools-1.8.10 → devsecops_engine_tools-1.8.12}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.8.10
3
+ Version: 1.8.12
4
4
  Summary: Tool for DevSecOps strategy
5
5
  Home-page: https://github.com/bancolombia/devsecops-engine-tools
6
6
  Author: Bancolombia DevSecOps Team
@@ -12,3 +12,8 @@ class ExceptionGettingFindings(Exception):
12
12
  def __init__(self, message):
13
13
  self.message = message
14
14
  super().__init__(self.message)
15
+
16
+ class ExceptionGettingEngagements(Exception):
17
+ def __init__(self, message):
18
+ self.message = message
19
+ super().__init__(self.message)
@@ -21,3 +21,9 @@ class VulnerabilityManagementGateway(metaclass=ABCMeta):
21
21
  self, service, dict_args, secret_tool, config_tool
22
22
  ):
23
23
  "get all findings and exclusions from vulnerability management platform"
24
+
25
+ @abstractmethod
26
+ def get_active_engagements(
27
+ self, engagement_name, dict_args, secret_tool, config_tool
28
+ ):
29
+ "get_active_engagements"
@@ -0,0 +1,178 @@
1
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.vulnerability_management_gateway import (
2
+ VulnerabilityManagementGateway,
3
+ )
4
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.secrets_manager_gateway import (
5
+ SecretsManagerGateway,
6
+ )
7
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
8
+ DevopsPlatformGateway,
9
+ )
10
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.printer_table_gateway import (
11
+ PrinterTableGateway,
12
+ )
13
+ from devsecops_engine_tools.engine_risk.src.applications.runner_engine_risk import (
14
+ runner_engine_risk,
15
+ )
16
+ from devsecops_engine_tools.engine_core.src.domain.model.customs_exceptions import (
17
+ ExceptionGettingFindings,
18
+ )
19
+ from devsecops_engine_tools.engine_core.src.domain.model.input_core import InputCore
20
+ import re
21
+
22
+ from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
23
+ from devsecops_engine_tools.engine_utilities import settings
24
+
25
+ logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
26
+
27
+
28
+ class HandleRisk:
29
+ def __init__(
30
+ self,
31
+ vulnerability_management: VulnerabilityManagementGateway,
32
+ secrets_manager_gateway: SecretsManagerGateway,
33
+ devops_platform_gateway: DevopsPlatformGateway,
34
+ print_table_gateway: PrinterTableGateway,
35
+ ):
36
+ self.vulnerability_management = vulnerability_management
37
+ self.secrets_manager_gateway = secrets_manager_gateway
38
+ self.devops_platform_gateway = devops_platform_gateway
39
+ self.print_table_gateway = print_table_gateway
40
+
41
+ def _get_all_from_vm(self, dict_args, secret_tool, remote_config, service):
42
+ try:
43
+ return self.vulnerability_management.get_all(
44
+ service,
45
+ dict_args,
46
+ secret_tool,
47
+ remote_config,
48
+ )
49
+ except ExceptionGettingFindings as e:
50
+ logger.error(
51
+ "Error getting finding list in handle risk: {0}".format(str(e))
52
+ )
53
+
54
+ def _filter_engagements(self, engagements, service, risk_config):
55
+ filtered_engagements = []
56
+ min_word_length = risk_config["HANDLE_SERVICE_NAME"]["MIN_WORD_LENGTH"]
57
+ words = [
58
+ word
59
+ for word in re.split(
60
+ risk_config["HANDLE_SERVICE_NAME"]["REGEX_GET_WORDS"], service
61
+ )
62
+ if len(word) > min_word_length
63
+ ]
64
+ check_words_regex = risk_config["HANDLE_SERVICE_NAME"]["REGEX_CHECK_WORDS"]
65
+ min_word_amount = risk_config["HANDLE_SERVICE_NAME"]["MIN_WORD_AMOUNT"]
66
+ for engagement in engagements:
67
+ if service.lower() in engagement.name.lower():
68
+ filtered_engagements += [engagement.name]
69
+ elif re.search(check_words_regex, engagement.name.lower()) and (
70
+ sum(1 for word in words if word.lower() in engagement.name.lower())
71
+ >= min_word_amount
72
+ ):
73
+ filtered_engagements += [engagement.name]
74
+ return filtered_engagements
75
+
76
+ def _exclude_services(self, dict_args, pipeline_name, service_list):
77
+ risk_exclusions = self.devops_platform_gateway.get_remote_config(
78
+ dict_args["remote_config_repo"], "engine_risk/Exclusions.json"
79
+ )
80
+ if (
81
+ pipeline_name in risk_exclusions
82
+ and risk_exclusions[pipeline_name].get("SKIP_SERVICE", 0)
83
+ and risk_exclusions[pipeline_name]["SKIP_SERVICE"].get("services", 0)
84
+ ):
85
+ services_to_exclude = risk_exclusions[pipeline_name]["SKIP_SERVICE"].get(
86
+ "services", []
87
+ )
88
+ service_excluded = []
89
+ for service in service_list:
90
+ if service in services_to_exclude:
91
+ service_list.remove(service)
92
+ service_excluded += [service]
93
+ print(f"Services to exclude: {service_excluded}")
94
+ logger.info(f"Services to exclude: {service_excluded}")
95
+ return service_list
96
+
97
+ def process(self, dict_args: any, remote_config: any):
98
+ secret_tool = None
99
+ if dict_args["use_secrets_manager"] == "true":
100
+ secret_tool = self.secrets_manager_gateway.get_secret(remote_config)
101
+
102
+ risk_config = self.devops_platform_gateway.get_remote_config(
103
+ dict_args["remote_config_repo"], "engine_risk/ConfigTool.json"
104
+ )
105
+
106
+ pipeline_name = self.devops_platform_gateway.get_variable("pipeline_name")
107
+ service = pipeline_name
108
+ service_list = []
109
+
110
+ if risk_config["HANDLE_SERVICE_NAME"]["ENABLED"].lower() == "true":
111
+ service = next(
112
+ (
113
+ pipeline_name.replace(ending, "")
114
+ for ending in risk_config["HANDLE_SERVICE_NAME"][
115
+ "ERASE_SERVICE_ENDING"
116
+ ]
117
+ if pipeline_name.endswith(ending)
118
+ ),
119
+ pipeline_name,
120
+ )
121
+ match_service_code = re.match(
122
+ risk_config["HANDLE_SERVICE_NAME"]["REGEX_GET_SERVICE_CODE"], service
123
+ )
124
+ if match_service_code:
125
+ service_code = match_service_code.group(0)
126
+ service_list += [
127
+ service.format(service_code=service_code)
128
+ for service in risk_config["HANDLE_SERVICE_NAME"]["ADD_SERVICES"]
129
+ ]
130
+ engagements = self.vulnerability_management.get_active_engagements(
131
+ service_code, dict_args, secret_tool, remote_config
132
+ )
133
+ service_list += self._filter_engagements(
134
+ engagements, service, risk_config
135
+ )
136
+
137
+ service_list += [service]
138
+
139
+ match_parent = re.match(
140
+ risk_config["PARENT_ANALYSIS"]["REGEX_GET_PARENT"], service
141
+ )
142
+ if risk_config["PARENT_ANALYSIS"]["ENABLED"].lower() == "true" and match_parent:
143
+ parent_service = match_parent.group(0)
144
+ service_list += [parent_service]
145
+
146
+ service_list = list(set(service_list))
147
+ new_service_list = self._exclude_services(
148
+ dict_args, pipeline_name, service_list
149
+ )
150
+
151
+ print(f"Services to analyze: {new_service_list}")
152
+ logger.info(f"Services to analyze: {new_service_list}")
153
+
154
+ findings = []
155
+ exclusions = []
156
+ for service in new_service_list:
157
+ findings_list, exclusions_list = self._get_all_from_vm(
158
+ dict_args, secret_tool, remote_config, service
159
+ )
160
+ findings += findings_list
161
+ exclusions += exclusions_list
162
+
163
+ result = runner_engine_risk(
164
+ dict_args,
165
+ findings,
166
+ exclusions,
167
+ self.devops_platform_gateway,
168
+ self.print_table_gateway,
169
+ )
170
+ input_core = InputCore(
171
+ [],
172
+ {},
173
+ "",
174
+ "",
175
+ pipeline_name,
176
+ self.devops_platform_gateway.get_variable("stage").capitalize(),
177
+ )
178
+ return result, input_core
@@ -10,6 +10,7 @@ from devsecops_engine_tools.engine_utilities.defect_dojo import (
10
10
  ImportScanRequest,
11
11
  Connect,
12
12
  Finding,
13
+ Engagement,
13
14
  )
14
15
  from devsecops_engine_tools.engine_core.src.domain.model.exclusions import Exclusions
15
16
  from devsecops_engine_tools.engine_core.src.domain.model.report import Report
@@ -18,6 +19,7 @@ from devsecops_engine_tools.engine_core.src.domain.model.customs_exceptions impo
18
19
  ExceptionVulnerabilityManagement,
19
20
  ExceptionFindingsExcepted,
20
21
  ExceptionGettingFindings,
22
+ ExceptionGettingEngagements
21
23
  )
22
24
  from devsecops_engine_tools.engine_core.src.infrastructure.helpers.util import (
23
25
  format_date,
@@ -247,6 +249,32 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
247
249
  "Error getting all findings with the following error: {0} ".format(ex)
248
250
  )
249
251
 
252
+ def get_active_engagements(self, engagement_name, dict_args, secret_tool, config_tool):
253
+ try:
254
+ request_is = ImportScanRequest(
255
+ token_defect_dojo=dict_args.get("token_vulnerability_management")
256
+ or secret_tool.get("token_defect_dojo"),
257
+ host_defect_dojo=config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"][
258
+ "HOST_DEFECT_DOJO"
259
+ ],
260
+ engagement_name=engagement_name,
261
+ )
262
+
263
+ request_active = {
264
+ "name": engagement_name,
265
+ "limit": config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"][
266
+ "LIMITS_QUERY"
267
+ ],
268
+ "active": "true",
269
+ }
270
+
271
+ return Engagement.get_engagements(request_is, request_active).results
272
+
273
+ except Exception as ex:
274
+ raise ExceptionGettingEngagements(
275
+ "Error getting engagements with the following error: {0} ".format(ex)
276
+ )
277
+
250
278
  def _get_session_manager(self, dict_args, secret_tool, config_tool):
251
279
  token_dd = dict_args.get("token_vulnerability_management") or secret_tool.get(
252
280
  "token_defect_dojo"
@@ -0,0 +1,11 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class GitGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def get_files_pull_request(self, sys_working_dir: str,
7
+ target_branch: str,
8
+ source_branch: str,
9
+ message_info_engine_secret: str
10
+ ) -> dict:
11
+ "get_files_pull_request"
@@ -11,6 +11,5 @@ class ToolGateway(metaclass=ABCMeta):
11
11
  exclude_path: dict,
12
12
  agent_os: str,
13
13
  agent_work_folder: str,
14
- num_threads: int,
15
- repository_name: str) -> str:
14
+ num_threads: int) -> str:
16
15
  "run tool secret scan"
@@ -36,20 +36,14 @@ class SecretScan:
36
36
  files_pullrequest = self.git_gateway.get_files_pull_request(
37
37
  self.devops_platform_gateway.get_variable("path_directory"),
38
38
  self.devops_platform_gateway.get_variable("target_branch"),
39
- config_tool.target_branches,
40
39
  self.devops_platform_gateway.get_variable("source_branch"),
41
- self.devops_platform_gateway.get_variable("access_token"),
42
- self.devops_platform_gateway.get_variable("organization"),
43
- self.devops_platform_gateway.get_variable("project_name"),
44
- self.devops_platform_gateway.get_variable("repository"),
45
- self.devops_platform_gateway.get_variable("repository_provider"))
40
+ config_tool.message_info_engine_secret)
46
41
  findings, file_path_findings = self.tool_gateway.run_tool_secret_scan(
47
42
  files_pullrequest,
48
43
  config_tool.exclude_path,
49
44
  self.devops_platform_gateway.get_variable("os"),
50
45
  self.devops_platform_gateway.get_variable("path_directory"),
51
- config_tool.number_threads,
52
- self.devops_platform_gateway.get_variable("repository")
46
+ config_tool.number_threads
53
47
  )
54
48
  finding_list = self.tool_deserialize.get_list_vulnerability(
55
49
  findings,
@@ -0,0 +1,41 @@
1
+ from dataclasses import dataclass
2
+ import os
3
+ import subprocess
4
+ from devsecops_engine_tools.engine_sast.engine_secret.src.domain.model.gateway.git_gateway import GitGateway
5
+
6
+ from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
7
+ from devsecops_engine_tools.engine_utilities import settings
8
+
9
+ logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
10
+
11
+ @dataclass
12
+ class GitRun(GitGateway):
13
+
14
+ def get_files_pull_request(self,
15
+ sys_working_dir,
16
+ target_branch,
17
+ source_branch,
18
+ message_info_engine_secret
19
+ ):
20
+ try:
21
+ source_branch = source_branch.replace("refs/heads/", "")
22
+ os.chdir(sys_working_dir)
23
+ subprocess.run(['git', 'checkout', '-b', source_branch, f'origin/{source_branch}'], text=True, capture_output=True, check=True)
24
+ env = os.environ.copy()
25
+ env["GIT_COMMITTER_NAME"] = "Your Name"
26
+ env["GIT_COMMITTER_EMAIL"] = "your.email@example.com"
27
+ env["GIT_AUTHOR_NAME"] = "Your Name"
28
+ env["GIT_AUTHOR_EMAIL"] = "your.email@example.com"
29
+ command = ["git", "rebase", f"origin/{target_branch}", "-X", "theirs"]
30
+ subprocess.run(command, env=env, text=True, capture_output=True)
31
+
32
+ diff = subprocess.run(['git', 'diff', f'origin/{target_branch}..{source_branch}', '--name-only'], capture_output=True, text=True)
33
+ if diff.returncode == 0:
34
+ diff_files = diff.stdout.strip().split("\n")
35
+ print("Pull Requests Associated Files:",diff_files)
36
+ return diff_files
37
+ except subprocess.CalledProcessError as e:
38
+ raise Exception(f"Error in pipeline configuration, {message_info_engine_secret}") from e
39
+ except Exception as e:
40
+ logger.warning(f"Error getting files PullRequest: {e}")
41
+ return []
@@ -43,8 +43,7 @@ class TrufflehogRun(ToolGateway):
43
43
  exclude_paths,
44
44
  agent_os,
45
45
  agent_work_folder,
46
- num_threads,
47
- repository_name,
46
+ num_threads
48
47
  ):
49
48
  trufflehog_command = "trufflehog"
50
49
  if "Windows" in agent_os:
@@ -60,7 +59,6 @@ class TrufflehogRun(ToolGateway):
60
59
  [agent_work_folder] * len(include_paths),
61
60
  [exclude_path] * len(include_paths),
62
61
  include_paths,
63
- [repository_name] * len(include_paths),
64
62
  )
65
63
  findings, file_findings = self.create_file(self.decode_output(results), agent_work_folder)
66
64
  return findings, file_findings
@@ -88,10 +86,9 @@ class TrufflehogRun(ToolGateway):
88
86
  trufflehog_command,
89
87
  agent_work_folder,
90
88
  exclude_path,
91
- include_path,
92
- repository_name,
89
+ include_path
93
90
  ):
94
- command = f"{trufflehog_command} filesystem {agent_work_folder + '/' + repository_name} --include-paths {include_path} --exclude-paths {exclude_path} --no-verification --json"
91
+ command = f"{trufflehog_command} filesystem {agent_work_folder} --include-paths {include_path} --exclude-paths {exclude_path} --no-verification --json"
95
92
  result = subprocess.run(command, capture_output=True, shell=True, text=True)
96
93
  return result.stdout.strip()
97
94
 
@@ -3,3 +3,4 @@ from .domain.request_objects.finding import FindingRequest
3
3
  from .applications.defect_dojo import DefectDojo
4
4
  from .applications.finding import Finding
5
5
  from .applications.connect import Connect
6
+ from .applications.engagement import Engagement
@@ -0,0 +1,16 @@
1
+ from devsecops_engine_tools.engine_utilities.utils.api_error import ApiError
2
+ from devsecops_engine_tools.engine_utilities.defect_dojo.domain.user_case.engagement import EngagementUserCase
3
+ from devsecops_engine_tools.engine_utilities.defect_dojo.domain.request_objects.import_scan import ImportScanRequest
4
+ from devsecops_engine_tools.engine_utilities.defect_dojo.infraestructure.driver_adapters.engagement import EngagementRestConsumer
5
+ from devsecops_engine_tools.engine_utilities.utils.session_manager import SessionManager
6
+
7
+ class Engagement:
8
+ @staticmethod
9
+ def get_engagements(request_is: ImportScanRequest, request: dict):
10
+ try:
11
+ rest_engagement = EngagementRestConsumer(request_is, session=SessionManager())
12
+
13
+ uc = EngagementUserCase(rest_engagement)
14
+ return uc.execute(request)
15
+ except ApiError as e:
16
+ raise e
@@ -0,0 +1,9 @@
1
+ from devsecops_engine_tools.engine_utilities.defect_dojo.infraestructure.driver_adapters.engagement import EngagementRestConsumer
2
+
3
+ class EngagementUserCase:
4
+ def __init__(self, rest_engagement: EngagementRestConsumer):
5
+ self.__rest_engagement = rest_engagement
6
+
7
+ def execute(self, request):
8
+ response = self.__rest_engagement.get_engagements_by_request(request)
9
+ return response
@@ -1,9 +1,16 @@
1
1
  import json
2
2
  from devsecops_engine_tools.engine_utilities.utils.api_error import ApiError
3
3
  from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
4
- from devsecops_engine_tools.engine_utilities.defect_dojo.domain.request_objects.import_scan import ImportScanRequest
5
- from devsecops_engine_tools.engine_utilities.defect_dojo.infraestructure.driver_adapters.settings.settings import VERIFY_CERTIFICATE
6
- from devsecops_engine_tools.engine_utilities.defect_dojo.domain.models.engagement import Engagement, EngagementList
4
+ from devsecops_engine_tools.engine_utilities.defect_dojo.domain.request_objects.import_scan import (
5
+ ImportScanRequest,
6
+ )
7
+ from devsecops_engine_tools.engine_utilities.defect_dojo.infraestructure.driver_adapters.settings.settings import (
8
+ VERIFY_CERTIFICATE,
9
+ )
10
+ from devsecops_engine_tools.engine_utilities.defect_dojo.domain.models.engagement import (
11
+ Engagement,
12
+ EngagementList,
13
+ )
7
14
  from devsecops_engine_tools.engine_utilities.utils.session_manager import SessionManager
8
15
  from datetime import datetime
9
16
  from devsecops_engine_tools.engine_utilities.settings import SETTING_LOGGER
@@ -18,18 +25,37 @@ class EngagementRestConsumer:
18
25
  self.__session = session._instance
19
26
 
20
27
  def get_engagements(self, engagement_name):
21
- url = f"{self.__host}/api/v2/engagements/?name={engagement_name}"
28
+ request = {"name": engagement_name}
29
+ return self.get_engagements_by_request(request)
22
30
 
23
- headers = {"Authorization": f"Token {self.__token}", "Content-Type": "application/json"}
31
+ def get_engagements_by_request(self, request):
32
+ url = f"{self.__host}/api/v2/engagements/"
33
+ headers = {
34
+ "Authorization": f"Token {self.__token}",
35
+ "Content-Type": "application/json",
36
+ }
24
37
  try:
25
- response = self.__session.get(url=url, headers=headers, verify=VERIFY_CERTIFICATE)
38
+ response = self.__session.get(
39
+ url=url, headers=headers, params=request, verify=VERIFY_CERTIFICATE
40
+ )
26
41
  if response.status_code != 200:
27
42
  logger.error(response.json())
28
43
  raise ApiError(response.json())
29
- response = EngagementList().from_dict(response.json())
44
+ engagements = EngagementList().from_dict(response.json())
45
+ while response.json().get("next", None):
46
+ next_url = response.json().get("next")
47
+ next_url = next_url.replace("http://", "https://", 1)
48
+ response = self.__session.get(
49
+ next_url, headers=headers, data={}, verify=VERIFY_CERTIFICATE
50
+ )
51
+ if response.status_code != 200:
52
+ raise ApiError(response.json())
53
+ engagements.results += (
54
+ EngagementList().from_dict(response.json()).results
55
+ )
30
56
  except Exception as e:
31
57
  raise ApiError(e)
32
- return response
58
+ return engagements
33
59
 
34
60
  def post_engagement(self, engagement_name, product_id):
35
61
  url = f"{self.__host}/api/v2/engagements/"
@@ -43,9 +69,14 @@ class EngagementRestConsumer:
43
69
  "status": "In Progress",
44
70
  }
45
71
  )
46
- headers = {"Authorization": f"Token {self.__token}", "Content-Type": "application/json"}
72
+ headers = {
73
+ "Authorization": f"Token {self.__token}",
74
+ "Content-Type": "application/json",
75
+ }
47
76
  try:
48
- response = self.__session.post(url=url, headers=headers, data=data, verify=VERIFY_CERTIFICATE)
77
+ response = self.__session.post(
78
+ url=url, headers=headers, data=data, verify=VERIFY_CERTIFICATE
79
+ )
49
80
  if response.status_code != 201:
50
81
  logger.error(response.json())
51
82
  raise ApiError(response.json())
@@ -23,6 +23,13 @@ class FindingRestConsumer:
23
23
  if response.status_code != 200:
24
24
  raise ApiError(response.json())
25
25
  findings = FindingList.from_dict(response.json())
26
+ while response.json().get("next", None):
27
+ next_url = response.json().get("next")
28
+ next_url = next_url.replace("http://", "https://", 1)
29
+ response = self.__session.get(next_url, headers=headers, data={}, verify=VERIFY_CERTIFICATE)
30
+ if response.status_code != 200:
31
+ raise ApiError(response.json())
32
+ findings.results += FindingList.from_dict(response.json()).results
26
33
  return findings
27
34
 
28
35
  def close(self, request, id):
@@ -0,0 +1 @@
1
+ version = '1.8.12'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.8.10
3
+ Version: 1.8.12
4
4
  Summary: Tool for DevSecOps strategy
5
5
  Home-page: https://github.com/bancolombia/devsecops-engine-tools
6
6
  Author: Bancolombia DevSecOps Team
@@ -211,6 +211,7 @@ devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py
211
211
  devsecops_engine_tools/engine_utilities/defect_dojo/applications/__init__.py
212
212
  devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py
213
213
  devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py
214
+ devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py
214
215
  devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py
215
216
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/__init__.py
216
217
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/__init__.py
@@ -230,6 +231,7 @@ devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.p
230
231
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py
231
232
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/__init__.py
232
233
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py
234
+ devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py
233
235
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py
234
236
  devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py
235
237
  devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/__init__.py
@@ -1,101 +0,0 @@
1
- from devsecops_engine_tools.engine_core.src.domain.model.gateway.vulnerability_management_gateway import (
2
- VulnerabilityManagementGateway,
3
- )
4
- from devsecops_engine_tools.engine_core.src.domain.model.gateway.secrets_manager_gateway import (
5
- SecretsManagerGateway,
6
- )
7
- from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
8
- DevopsPlatformGateway,
9
- )
10
- from devsecops_engine_tools.engine_core.src.domain.model.gateway.printer_table_gateway import (
11
- PrinterTableGateway,
12
- )
13
- from devsecops_engine_tools.engine_risk.src.applications.runner_engine_risk import (
14
- runner_engine_risk,
15
- )
16
- from devsecops_engine_tools.engine_core.src.domain.model.customs_exceptions import (
17
- ExceptionGettingFindings,
18
- )
19
- from devsecops_engine_tools.engine_core.src.domain.model.input_core import (
20
- InputCore
21
- )
22
-
23
- from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
24
- from devsecops_engine_tools.engine_utilities import settings
25
-
26
- logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
27
-
28
-
29
- class HandleRisk:
30
- def __init__(
31
- self,
32
- vulnerability_management: VulnerabilityManagementGateway,
33
- secrets_manager_gateway: SecretsManagerGateway,
34
- devops_platform_gateway: DevopsPlatformGateway,
35
- print_table_gateway: PrinterTableGateway,
36
- ):
37
- self.vulnerability_management = vulnerability_management
38
- self.secrets_manager_gateway = secrets_manager_gateway
39
- self.devops_platform_gateway = devops_platform_gateway
40
- self.print_table_gateway = print_table_gateway
41
-
42
- def _get_all_from_vm(self, dict_args, secret_tool, remote_config, service):
43
- try:
44
- return self.vulnerability_management.get_all(
45
- service,
46
- dict_args,
47
- secret_tool,
48
- remote_config,
49
- )
50
- except ExceptionGettingFindings as e:
51
- logger.error(
52
- "Error getting finding list in handle risk: {0}".format(str(e))
53
- )
54
-
55
- def process(self, dict_args: any, remote_config: any):
56
- secret_tool = None
57
- if dict_args["use_secrets_manager"] == "true":
58
- secret_tool = self.secrets_manager_gateway.get_secret(remote_config)
59
-
60
- risk_config = self.devops_platform_gateway.get_remote_config(
61
- dict_args["remote_config_repo"], "engine_risk/ConfigTool.json"
62
- )
63
-
64
- service = self.devops_platform_gateway.get_variable("pipeline_name")
65
- parent_identifier = risk_config["PARENT_ANALYSIS"]["PARENT_IDENTIFIER"]
66
-
67
- parent_findings = []
68
- parent_exclusions = []
69
- if (
70
- risk_config["PARENT_ANALYSIS"]["ENABLED"].lower() == "true"
71
- and parent_identifier in service
72
- ):
73
- parent_service = service.split(parent_identifier)[0] + parent_identifier
74
- parent_findings, parent_exclusions = self._get_all_from_vm(
75
- dict_args, secret_tool, remote_config, parent_service
76
- )
77
-
78
- findings, exclusions = self._get_all_from_vm(
79
- dict_args, secret_tool, remote_config, service
80
- )
81
-
82
- findings_list = parent_findings + findings
83
-
84
- exclusions_list = parent_exclusions + exclusions
85
-
86
- result = runner_engine_risk(
87
- dict_args,
88
- findings_list,
89
- exclusions_list,
90
- self.devops_platform_gateway,
91
- self.print_table_gateway,
92
- )
93
- input_core = InputCore(
94
- [],
95
- {},
96
- "",
97
- "",
98
- service,
99
- self.devops_platform_gateway.get_variable("stage").capitalize(),
100
- )
101
- return result, input_core
@@ -1,15 +0,0 @@
1
- from abc import ABCMeta, abstractmethod
2
-
3
-
4
- class GitGateway(metaclass=ABCMeta):
5
- @abstractmethod
6
- def get_files_pull_request(self, sys_working_dir: str,
7
- target_branch: str,
8
- config_target_branch: dict,
9
- source_branch: str,
10
- access_token: str,
11
- collection_uri: str,
12
- team_project: str,
13
- repository_name: str,
14
- repository_provider: str) -> dict:
15
- "get_files_pull_request"