devsecops-engine-tools 1.115.1__tar.gz → 1.116.0__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 (421) hide show
  1. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/PKG-INFO +2 -2
  2. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +2 -0
  3. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +19 -0
  4. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +3 -6
  5. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +7 -47
  6. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/applications/runner_function_scan.py +32 -0
  7. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/model/gateways/deserealizator_gateway.py +8 -0
  8. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/model/gateways/tool_gateway.py +13 -0
  9. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/usecases/function_sca_scan.py +71 -0
  10. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/usecases/handle_remote_config_patterns.py +73 -0
  11. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/usecases/set_input_core.py +76 -0
  12. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +175 -0
  13. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +59 -0
  14. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/infrastructure/entry_points/entry_point_tool.py +61 -0
  15. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/__init__.py +0 -0
  16. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/__init__.py +0 -0
  17. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/__init__.py +0 -0
  18. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/__init__.py +0 -0
  19. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/__init__.py +0 -0
  20. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/__init__.py +0 -0
  21. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/__init__.py +0 -0
  22. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/__init__.py +0 -0
  23. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/__init__.py +0 -0
  24. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/ssh/__init__.py +0 -0
  25. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/trivy_utils/__init__.py +0 -0
  26. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure/__init__.py +0 -0
  27. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure/driven_adapters/__init__.py +0 -0
  28. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/twistcli_utils/__init__.py +0 -0
  29. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/twistcli_utils/twistcli_utils.py +44 -0
  30. devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  31. devsecops_engine_tools-1.116.0/devsecops_engine_tools/version.py +1 -0
  32. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/PKG-INFO +2 -2
  33. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/SOURCES.txt +25 -0
  34. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/requires.txt +1 -1
  35. devsecops_engine_tools-1.115.1/devsecops_engine_tools/version.py +0 -1
  36. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/README.md +0 -0
  37. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/__init__.py +0 -0
  38. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/__init__.py +0 -0
  39. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  40. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  41. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  42. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  43. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  44. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  45. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/component.py +0 -0
  46. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +0 -0
  47. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +0 -0
  48. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/finding.py +0 -0
  49. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  50. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +0 -0
  51. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +0 -0
  52. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +0 -0
  53. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/sbom_manager.py +0 -0
  54. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +0 -0
  55. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +0 -0
  56. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/input_core.py +0 -0
  57. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +0 -0
  58. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +0 -0
  59. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/report.py +0 -0
  60. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/threshold.py +0 -0
  61. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +0 -0
  62. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  63. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +0 -0
  64. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +0 -0
  65. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +0 -0
  66. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  67. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  68. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  69. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +0 -0
  70. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +0 -0
  71. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  72. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +0 -0
  73. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/__init__.py +0 -0
  74. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/cdxgen/cdxgen.py +0 -0
  75. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  76. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +0 -0
  77. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py +0 -0
  78. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py +0 -0
  79. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  80. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/__init__.py +0 -0
  81. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/printer_rich_table.py +0 -0
  82. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/__init__.py +0 -0
  83. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +0 -0
  84. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/__init__.py +0 -0
  85. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/syft/syft.py +0 -0
  86. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/__init__.py +0 -0
  87. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +0 -0
  88. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/__init__.py +0 -0
  89. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +0 -0
  90. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +0 -0
  91. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/__init__.py +0 -0
  92. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/__init__.py +0 -0
  93. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/applications/__init__.py +0 -0
  94. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/applications/runner_dast_scan.py +0 -0
  95. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/deployment/__init__.py +0 -0
  96. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/deployment/infrastructure/__init__.py +0 -0
  97. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/__init__.py +0 -0
  98. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/__init__.py +0 -0
  99. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/api_config.py +0 -0
  100. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/api_operation.py +0 -0
  101. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/gateways/__init__.py +0 -0
  102. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/gateways/authentication_gateway.py +0 -0
  103. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/gateways/tool_gateway.py +0 -0
  104. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/model/wa_config.py +0 -0
  105. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/usecases/__init__.py +0 -0
  106. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/domain/usecases/dast_scan.py +0 -0
  107. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/__init__.py +0 -0
  108. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/__init__.py +0 -0
  109. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http/__init__.py +0 -0
  110. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http/client/__init__.py +0 -0
  111. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/http/client/auth_client.py +0 -0
  112. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt/__init__.py +0 -0
  113. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt/jwt_object.py +0 -0
  114. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/jwt/jwt_tool.py +0 -0
  115. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/__init__.py +0 -0
  116. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_config.py +0 -0
  117. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_deserealizer.py +0 -0
  118. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/nuclei/nuclei_tool.py +0 -0
  119. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth/__init__.py +0 -0
  120. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters/oauth/generic_oauth.py +0 -0
  121. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/__init__.py +0 -0
  122. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points/entry_point_dast.py +0 -0
  123. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/__init__.py +0 -0
  124. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/file_generator_tool.py +0 -0
  125. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_dast/src/infrastructure/helpers/json_handler.py +0 -0
  126. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/__init__.py +0 -0
  127. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/__init__.py +0 -0
  128. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/applications/__init__.py +0 -0
  129. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/applications/runner_engine_integrations.py +0 -0
  130. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/domain/__init__.py +0 -0
  131. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/domain/usecases/__init__.py +0 -0
  132. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/domain/usecases/handle_integrations.py +0 -0
  133. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/infrastructure/__init__.py +0 -0
  134. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/__init__.py +0 -0
  135. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_integrations/src/infrastructure/entry_points/entry_point_integrations.py +0 -0
  136. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/__init__.py +0 -0
  137. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/__init__.py +0 -0
  138. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/applications/__init__.py +0 -0
  139. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/applications/runner_engine_risk.py +0 -0
  140. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/deployment/__init__.py +0 -0
  141. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/deployment/infrastructure/__init__.py +0 -0
  142. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/__init__.py +0 -0
  143. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/model/__init__.py +0 -0
  144. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/__init__.py +0 -0
  145. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py +0 -0
  146. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/__init__.py +0 -0
  147. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py +0 -0
  148. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py +0 -0
  149. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/check_threshold.py +0 -0
  150. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py +0 -0
  151. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +0 -0
  152. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/__init__.py +0 -0
  153. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/__init__.py +0 -0
  154. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/__init__.py +0 -0
  155. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/first_epss_csv.py +0 -0
  156. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/__init__.py +0 -0
  157. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/entry_point_risk.py +0 -0
  158. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_risk/src/infrastructure/helpers/__init__.py +0 -0
  159. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/__init__.py +0 -0
  160. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/__init__.py +0 -0
  161. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/__init__.py +0 -0
  162. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/applications/__init__.py +0 -0
  163. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/applications/runner_engine_code.py +0 -0
  164. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/deployment/__init__.py +0 -0
  165. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure/__init__.py +0 -0
  166. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/__init__.py +0 -0
  167. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/__init__.py +0 -0
  168. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/config_tool.py +0 -0
  169. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways/__init__.py +0 -0
  170. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways/tool_gateway.py +0 -0
  171. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases/__init__.py +0 -0
  172. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases/code_scan.py +0 -0
  173. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/__init__.py +0 -0
  174. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/__init__.py +0 -0
  175. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/__init__.py +0 -0
  176. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_deserealizator.py +0 -0
  177. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_tool.py +0 -0
  178. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/kiuwan/__init__.py +0 -0
  179. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/kiuwan/kiuwan_deserealizator.py +0 -0
  180. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/kiuwan/kiuwan_tool.py +0 -0
  181. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points/__init__.py +0 -0
  182. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  183. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers/__init__.py +0 -0
  184. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/__init__.py +0 -0
  185. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/__init__.py +0 -0
  186. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/__init__.py +0 -0
  187. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +0 -0
  188. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/__init__.py +0 -0
  189. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure/__init__.py +0 -0
  190. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/__init__.py +0 -0
  191. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/__init__.py +0 -0
  192. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +0 -0
  193. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/context_iac.py +0 -0
  194. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/__init__.py +0 -0
  195. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +0 -0
  196. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/__init__.py +0 -0
  197. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +0 -0
  198. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/__init__.py +0 -0
  199. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/__init__.py +0 -0
  200. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/__init__.py +0 -0
  201. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +0 -0
  202. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +0 -0
  203. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +0 -0
  204. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/__init__.py +0 -0
  205. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +0 -0
  206. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +0 -0
  207. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/__init__.py +0 -0
  208. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py +0 -0
  209. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py +0 -0
  210. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/__init__.py +0 -0
  211. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  212. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/__init__.py +0 -0
  213. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +0 -0
  214. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/__init__.py +0 -0
  215. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/__init__.py +0 -0
  216. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/__init__.py +0 -0
  217. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +0 -0
  218. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/__init__.py +0 -0
  219. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure/__init__.py +0 -0
  220. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/__init__.py +0 -0
  221. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/__init__.py +0 -0
  222. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/__init__.py +0 -0
  223. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +0 -0
  224. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +0 -0
  225. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/__init__.py +0 -0
  226. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +0 -0
  227. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +0 -0
  228. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/__init__.py +0 -0
  229. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/__init__.py +0 -0
  230. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/__init__.py +0 -0
  231. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_deserealizator.py +0 -0
  232. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/gitleaks/gitleaks_tool.py +0 -0
  233. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/__init__.py +0 -0
  234. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +0 -0
  235. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +0 -0
  236. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/__init__.py +0 -0
  237. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  238. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/__init__.py +0 -0
  239. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/__init__.py +0 -0
  240. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/__init__.py +0 -0
  241. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/applications/__init__.py +0 -0
  242. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +0 -0
  243. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/deployment/__init__.py +0 -0
  244. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure/__init__.py +0 -0
  245. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/__init__.py +0 -0
  246. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/__init__.py +0 -0
  247. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/context_container.py +0 -0
  248. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/__init__.py +0 -0
  249. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +0 -0
  250. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +0 -0
  251. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +0 -0
  252. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/__init__.py +0 -0
  253. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +0 -0
  254. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  255. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +0 -0
  256. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/__init__.py +0 -0
  257. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/__init__.py +0 -0
  258. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/__init__.py +0 -0
  259. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +0 -0
  260. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/__init__.py +0 -0
  261. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +0 -0
  262. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/__init__.py +0 -0
  263. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  264. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/__init__.py +0 -0
  265. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  266. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers/__init__.py +0 -0
  267. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/__init__.py +0 -0
  268. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/__init__.py +0 -0
  269. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/__init__.py +0 -0
  270. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +0 -0
  271. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/__init__.py +0 -0
  272. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure/__init__.py +0 -0
  273. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/__init__.py +0 -0
  274. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/__init__.py +0 -0
  275. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/context_dependencies.py +0 -0
  276. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/__init__.py +0 -0
  277. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +0 -0
  278. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +0 -0
  279. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/__init__.py +0 -0
  280. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +0 -0
  281. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  282. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +0 -0
  283. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/__init__.py +0 -0
  284. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/__init__.py +0 -0
  285. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/__init__.py +0 -0
  286. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py +0 -0
  287. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +0 -0
  288. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/trivy_tool/__init__.py +0 -0
  289. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  290. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/__init__.py +0 -0
  291. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +0 -0
  292. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +0 -0
  293. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/__init__.py +0 -0
  294. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  295. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/__init__.py +0 -0
  296. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/get_artifacts.py +0 -0
  297. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function}/__init__.py +0 -0
  298. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/azuredevops → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src}/__init__.py +0 -0
  299. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/applications}/__init__.py +0 -0
  300. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/azuredevops/models → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/deployment}/__init__.py +0 -0
  301. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/deployment/infrastructure}/__init__.py +0 -0
  302. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic/src → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain}/__init__.py +0 -0
  303. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic/src/applications → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/model}/__init__.py +0 -0
  304. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic/src/domain → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/domain/model/gateways}/__init__.py +0 -0
  305. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function}/src/domain/usecases/__init__.py +0 -0
  306. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function}/src/infrastructure/__init__.py +0 -0
  307. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function}/src/infrastructure/driven_adapters/__init__.py +0 -0
  308. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/driven_adapters/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/infrastructure/driven_adapters/prisma_cloud}/__init__.py +0 -0
  309. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/copacetic → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function}/src/infrastructure/entry_points/__init__.py +0 -0
  310. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/applications → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_sca/engine_function/src/infrastructure/helpers}/__init__.py +0 -0
  311. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities}/__init__.py +0 -0
  312. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/azuredevops}/__init__.py +0 -0
  313. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure}/__init__.py +0 -0
  314. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +0 -0
  315. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +0 -0
  316. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +0 -0
  317. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/azuredevops/models}/__init__.py +0 -0
  318. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic}/__init__.py +0 -0
  319. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src}/__init__.py +0 -0
  320. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/applications}/__init__.py +0 -0
  321. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/copacetic/src/applications/runner_copacetic.py +0 -0
  322. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/domain}/__init__.py +0 -0
  323. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/domain/usecases}/__init__.py +0 -0
  324. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/copacetic/src/domain/usecases/copacetic.py +0 -0
  325. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/git_cli → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure}/__init__.py +0 -0
  326. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/git_cli/infrastructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/driven_adapters}/__init__.py +0 -0
  327. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/git_cli/model → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/driven_adapters/copacetic}/__init__.py +0 -0
  328. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/driven_adapters/copacetic/copacetic_adapter.py +0 -0
  329. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/git_cli/model/gateway → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/entry_points}/__init__.py +0 -0
  330. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/copacetic/src/infrastructure/entry_points/entry_point_copacetic.py +0 -0
  331. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +0 -0
  332. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/github → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/applications}/__init__.py +0 -0
  333. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/component.py +0 -0
  334. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +0 -0
  335. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +0 -0
  336. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py +0 -0
  337. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +0 -0
  338. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding_exclusion.py +0 -0
  339. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/product.py +0 -0
  340. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/github/infrastructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain}/__init__.py +0 -0
  341. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/github → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain}/models/__init__.py +0 -0
  342. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +0 -0
  343. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/component.py +0 -0
  344. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +0 -0
  345. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +0 -0
  346. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding_exclusion.py +0 -0
  347. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +0 -0
  348. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +0 -0
  349. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +0 -0
  350. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +0 -0
  351. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +0 -0
  352. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/input_validations → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects}/__init__.py +0 -0
  353. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +0 -0
  354. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +0 -0
  355. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sbom → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers}/__init__.py +0 -0
  356. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +0 -0
  357. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +0 -0
  358. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case}/__init__.py +0 -0
  359. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +0 -0
  360. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/component.py +0 -0
  361. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py +0 -0
  362. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +0 -0
  363. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding_exclusion.py +0 -0
  364. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +0 -0
  365. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/product.py +0 -0
  366. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure}/__init__.py +0 -0
  367. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/applications → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters}/__init__.py +0 -0
  368. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +0 -0
  369. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/component.py +0 -0
  370. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +0 -0
  371. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +0 -0
  372. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding_exclusion.py +0 -0
  373. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +0 -0
  374. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +0 -0
  375. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +0 -0
  376. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +0 -0
  377. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings}/__init__.py +0 -0
  378. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +0 -0
  379. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository}/__init__.py +0 -0
  380. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/git_cli}/__init__.py +0 -0
  381. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/git_cli/infrastructure}/__init__.py +0 -0
  382. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/git_cli/infrastructure/git_run.py +0 -0
  383. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/git_cli/model}/__init__.py +0 -0
  384. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/git_cli/model/gateway}/__init__.py +0 -0
  385. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/git_cli/model/gateway/git_gateway.py +0 -0
  386. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/github}/__init__.py +0 -0
  387. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/github/infrastructure}/__init__.py +0 -0
  388. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +0 -0
  389. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/github/models/GithubPredefinedVariables.py +0 -0
  390. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/github/models}/__init__.py +0 -0
  391. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/ssh → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/input_validations}/__init__.py +0 -0
  392. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +0 -0
  393. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +0 -0
  394. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/trivy_utils → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sbom}/__init__.py +0 -0
  395. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sbom/deserealizator.py +0 -0
  396. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/settings.py +0 -0
  397. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube}/__init__.py +0 -0
  398. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure/driven_adapters → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src}/__init__.py +0 -0
  399. {devsecops_engine_tools-1.115.1/devsecops_engine_tools/engine_utilities/utils → devsecops_engine_tools-1.116.0/devsecops_engine_tools/engine_utilities/sonarqube/src/applications}/__init__.py +0 -0
  400. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py +0 -0
  401. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py +0 -0
  402. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py +0 -0
  403. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/sonarqube_report.py +0 -0
  404. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py +0 -0
  405. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/utils.py +0 -0
  406. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +0 -0
  407. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure/driven_adapters/trivy_deserialize_output.py +0 -0
  408. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/trivy_utils/infrastructure/driven_adapters/trivy_manager_scan_utils.py +0 -0
  409. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/api_error.py +0 -0
  410. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +0 -0
  411. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +0 -0
  412. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/logger_info.py +0 -0
  413. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/name_conversion.py +0 -0
  414. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/printers.py +0 -0
  415. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/session_manager.py +0 -0
  416. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools/engine_utilities/utils/utils.py +0 -0
  417. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/dependency_links.txt +0 -0
  418. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/entry_points.txt +0 -0
  419. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/devsecops_engine_tools.egg-info/top_level.txt +0 -0
  420. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/setup.cfg +0 -0
  421. {devsecops_engine_tools-1.115.1 → devsecops_engine_tools-1.116.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: devsecops-engine-tools
3
- Version: 1.115.1
3
+ Version: 1.116.0
4
4
  Summary: Tool for DevSecOps strategy
5
5
  Home-page: https://github.com/bancolombia/devsecops-engine-tools
6
6
  Author: Bancolombia DevSecOps Team
@@ -29,7 +29,7 @@ Requires-Dist: rich==14.1.0
29
29
  Requires-Dist: cpe==1.3.1
30
30
  Requires-Dist: packageurl-python==0.13.4
31
31
  Requires-Dist: ruamel.yaml==0.18.15
32
- Requires-Dist: Authlib==1.6.4
32
+ Requires-Dist: Authlib==1.6.5
33
33
  Requires-Dist: PyJWT==2.10.1
34
34
  Requires-Dist: sympy==1.14.0
35
35
  Requires-Dist: urllib3==1.26.20
@@ -125,6 +125,7 @@ def get_inputs_from_cli(args):
125
125
  "engine_dependencies",
126
126
  "engine_container",
127
127
  "engine_risk",
128
+ "engine_function",
128
129
  ],
129
130
  type=str,
130
131
  required=True,
@@ -246,6 +247,7 @@ def get_inputs_from_cli(args):
246
247
  "engine_code": ["bearer", "kiuwan"],
247
248
  "engine_dast": ["nuclei"],
248
249
  "engine_risk": None,
250
+ "engine_function": ["prisma"],
249
251
  }
250
252
 
251
253
  args = parser.parse_args()
@@ -36,6 +36,9 @@ from devsecops_engine_tools.engine_sca.engine_container.src.applications.runner_
36
36
  from devsecops_engine_tools.engine_sca.engine_dependencies.src.applications.runner_dependencies_scan import (
37
37
  runner_engine_dependencies,
38
38
  )
39
+ from devsecops_engine_tools.engine_sca.engine_function.src.applications.runner_function_scan import (
40
+ runner_engine_function,
41
+ )
39
42
  from devsecops_engine_tools.engine_dast.src.applications.runner_dast_scan import (
40
43
  runner_engine_dast,
41
44
  )
@@ -100,6 +103,22 @@ class HandleScan:
100
103
  sbom_components,
101
104
  )
102
105
  return findings_list, input_core
106
+ elif "engine_function" in dict_args["module"]:
107
+ findings_list, input_core = runner_engine_function(
108
+ dict_args,
109
+ config_tool["ENGINE_FUNCTION"],
110
+ secret_tool,
111
+ self.devops_platform_gateway,
112
+ self.remote_config_source_gateway
113
+ )
114
+ self._use_vulnerability_management(
115
+ config_tool,
116
+ input_core,
117
+ dict_args,
118
+ secret_tool,
119
+ env
120
+ )
121
+ return findings_list, input_core
103
122
  elif "engine_dast" in dict_args["module"]:
104
123
  findings_list, input_core = runner_engine_dast(
105
124
  dict_args,
@@ -27,9 +27,7 @@ class PrinterPrettyTable(PrinterTableGateway):
27
27
  finding.description,
28
28
  finding.where,
29
29
  ]
30
- if (finding.module == "engine_container") or (
31
- finding.module == "engine_dependencies"
32
- ):
30
+ if finding.module in ("engine_container", "engine_dependencies", "engine_function"):
33
31
  row_data.append(finding.requirements)
34
32
  elif finding.module == "engine_code":
35
33
  row_data.append(finding.cvss)
@@ -53,9 +51,8 @@ class PrinterPrettyTable(PrinterTableGateway):
53
51
  if (
54
52
  finding_list
55
53
  and (
56
- (finding_list[0].module == "engine_container")
57
- or (finding_list[0].module == "engine_dependencies")
58
- )
54
+ finding_list[0].module in ["engine_container","engine_dependencies", "engine_function"]
55
+ )
59
56
  ):
60
57
  headers = ["Severity", "ID", "Description", "Where", "Fixed in"]
61
58
  elif finding_list and finding_list[0].module == "engine_code":
@@ -1,10 +1,8 @@
1
- import stat
2
1
  import requests
3
2
  import os
4
3
  import subprocess
5
4
  import base64
6
5
  import json
7
- import platform
8
6
  from devsecops_engine_tools.engine_sca.engine_container.src.domain.model.gateways.tool_gateway import (
9
7
  ToolGateway,
10
8
  )
@@ -13,55 +11,18 @@ from devsecops_engine_tools.engine_utilities.sbom.deserealizator import (
13
11
  )
14
12
  from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
15
13
  from devsecops_engine_tools.engine_utilities import settings
14
+ from devsecops_engine_tools.engine_utilities.twistcli_utils.twistcli_utils import download_twistcli
16
15
 
17
16
  logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
18
17
 
19
18
 
20
19
  class PrismaCloudManagerScan(ToolGateway):
21
- def download_twistcli(
22
- self,
23
- file_path,
24
- prisma_key,
25
- prisma_console_url,
26
- prisma_api_version,
27
- ):
28
-
29
- machine = platform.machine()
30
- system = platform.system()
31
-
32
- base_url = f"{prisma_console_url}/api/{prisma_api_version}/util"
33
-
34
- os_mapping = {
35
- "Linux": "twistcli",
36
- "Windows": "windows/twistcli.exe",
37
- "Darwin": "osx/twistcli",
38
- }
39
-
40
- url = f"{base_url}/{os_mapping[system]}"
41
-
42
- if system == "Linux" and machine == "aarch64":
43
- url = f"{base_url}/arm64/twistcli"
44
- elif system == "Darwin" and machine == "aarch64":
45
- url = f"{base_url}/osx/arm64/twistcli"
46
-
47
- credentials = base64.b64encode(
48
- prisma_key.encode()
49
- ).decode()
50
- headers = {"Authorization": f"Basic {credentials}"}
51
- try:
52
- response = requests.get(url, headers=headers)
53
- response.raise_for_status()
54
-
55
- with open(file_path, "wb") as file:
56
- file.write(response.content)
57
-
58
- os.chmod(file_path, stat.S_IRWXU)
59
- logger.info(f"twistcli downloaded and saved to: {file_path}")
60
- return 0
61
-
62
- except Exception as e:
63
- raise ValueError(f"Error downloading twistcli: {e}")
64
-
20
+ def download_twistcli(self, file_path, prisma_key, prisma_console_url, prisma_api_version) -> int:
21
+ """
22
+ Método de instancia separado (lo que usan los tests),
23
+ delega en el util compat 'basic' para no romper aserciones.
24
+ """
25
+ return download_twistcli(file_path, prisma_key, prisma_console_url, prisma_api_version)
65
26
  def scan_image(
66
27
  self, file_path, image_name, result_file, remoteconfig, prisma_key, docker_address
67
28
  ):
@@ -168,7 +129,6 @@ class PrismaCloudManagerScan(ToolGateway):
168
129
  except Exception as e:
169
130
  logger.error(f"Error generating SBOM: {e}")
170
131
 
171
-
172
132
  def _split_prisma_token(self, prisma_key):
173
133
  try:
174
134
  access_prisma, token_prisma = prisma_key.split(":")
@@ -0,0 +1,32 @@
1
+ from devsecops_engine_tools.engine_sca.engine_function.src.infrastructure.entry_points.entry_point_tool import (
2
+ init_engine_sca_rm,
3
+ )
4
+ from devsecops_engine_tools.engine_sca.engine_function.src.infrastructure.driven_adapters.prisma_cloud.prisma_cloud_manager_scan import (
5
+ PrismaCloudManagerScan,
6
+ )
7
+ from devsecops_engine_tools.engine_sca.engine_function.src.infrastructure.driven_adapters.prisma_cloud.prisma_deserialize_output import (
8
+ PrismaDeserealizator,
9
+ )
10
+
11
+
12
+ def runner_engine_function(dict_args, config_tool, secret_tool, tool_remote, remote_config_source_gateway):
13
+ try:
14
+ if config_tool["TOOL"].lower() == "prisma":
15
+ tool_run = PrismaCloudManagerScan(config_tool, dict_args)
16
+ tool_deseralizator = PrismaDeserealizator()
17
+ return init_engine_sca_rm(
18
+ tool_run,
19
+ tool_remote,
20
+ remote_config_source_gateway,
21
+ tool_deseralizator,
22
+ dict_args,
23
+ secret_tool,
24
+ config_tool,
25
+ )
26
+
27
+ except Exception as e:
28
+ raise Exception(f"Error SCAN engine function : {str(e)}")
29
+
30
+
31
+ if __name__ == "__main__":
32
+ runner_engine_function()
@@ -0,0 +1,8 @@
1
+ from abc import ABCMeta, abstractmethod
2
+ from devsecops_engine_tools.engine_core.src.domain.model.finding import Finding
3
+
4
+
5
+ class DeseralizatorGateway(metaclass=ABCMeta):
6
+ @abstractmethod
7
+ def get_list_findings(self, results_scan_list: list) -> "list[Finding]":
8
+ "Deseralizator"
@@ -0,0 +1,13 @@
1
+ from abc import ABCMeta, abstractmethod
2
+
3
+
4
+ class ToolGateway(metaclass=ABCMeta):
5
+ @abstractmethod
6
+ def run_tool_function_sca(
7
+ self,
8
+ dict_args,
9
+ token:str=None,
10
+ skip_flag:bool=None,
11
+ ) -> str:
12
+
13
+ "run tool function sca"
@@ -0,0 +1,71 @@
1
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
2
+ DevopsPlatformGateway,
3
+ )
4
+ from devsecops_engine_tools.engine_sca.engine_function.src.domain.model.gateways.tool_gateway import (
5
+ ToolGateway,
6
+ )
7
+ from devsecops_engine_tools.engine_sca.engine_function.src.domain.model.gateways.deserealizator_gateway import (
8
+ DeseralizatorGateway,
9
+ )
10
+
11
+
12
+ class FunctionScaScan:
13
+ def __init__(
14
+ self,
15
+ tool_run: ToolGateway,
16
+ remote_config,
17
+ tool_remote: DevopsPlatformGateway,
18
+ tool_deseralizator: DeseralizatorGateway,
19
+ dict_args,
20
+ secret_tool,
21
+ token_engine_container
22
+ ):
23
+ self.tool_run = tool_run
24
+ self.remote_config = remote_config
25
+ self.tool_remote = tool_remote
26
+ self.tool_deseralizator = tool_deseralizator
27
+ self.dict_args = dict_args
28
+ self.secret_tool = secret_tool
29
+ self.token_engine_container = token_engine_container
30
+
31
+ def get_remote_config(self, file_path):
32
+ """
33
+ Get remote configuration.
34
+
35
+ Returns:
36
+ dict: Remote configuration.
37
+ """
38
+ return self.tool_remote.get_remote_config(self.dict_args["remote_config_repo"], file_path, self.dict_args["remote_config_branch"])
39
+
40
+
41
+ def get_variable(self, variable):
42
+ """
43
+ Get variable.
44
+
45
+ Returns:
46
+ dict: Remote variable.
47
+ """
48
+ return self.tool_remote.get_variable(variable)
49
+
50
+ def process(self):
51
+ """
52
+ Process SCA scanning.
53
+
54
+ Returns:
55
+ dict: SCA scanning results.
56
+ """
57
+
58
+ return self.tool_run.run_tool_function_sca(
59
+ self.get_remote_config("engine_sca/engine_function/ConfigTool.json"),
60
+ self.secret_tool,
61
+ self.token_engine_container,
62
+ )
63
+
64
+ def deseralizator(self, function_scanned):
65
+ """
66
+ Process the results deserializer.
67
+
68
+ Returns:
69
+ list: Deserialized list of findings.
70
+ """
71
+ return self.tool_deseralizator.get_list_findings(function_scanned)
@@ -0,0 +1,73 @@
1
+ import re
2
+
3
+ class HandleRemoteConfigPatterns:
4
+ def __init__(self, remote_config, exclusions, pipeline_name):
5
+ self.remote_config = remote_config
6
+ self.exclusions = exclusions
7
+ self.pipeline_name = pipeline_name
8
+
9
+ def get_remote_config(self, file_path):
10
+ """
11
+ Get remote configuration
12
+ Return: dict: Remote configuration
13
+ """
14
+ return self.tool_remote.get_remote_config(
15
+ self.dict_args["remote_config_repo"], file_path, self.dict_args["remote_config_branch"]
16
+ )
17
+
18
+ def get_variable(self, variable):
19
+ """
20
+ Get variable.
21
+
22
+ Returns:
23
+ dict: Remote variable.
24
+ """
25
+ return self.tool_remote.get_variable(variable)
26
+
27
+ def handle_skip_tool(self, exclusions, pipeline_name):
28
+ """
29
+ Handle skip tool.
30
+
31
+ Return: bool: True -> skip tool, False -> not skip tool.
32
+ """
33
+ if (pipeline_name in exclusions) and (
34
+ exclusions[pipeline_name].get("SKIP_TOOL", 0)
35
+ ):
36
+ return True
37
+ else:
38
+ return False
39
+
40
+ def process_handle_skip_tool(self):
41
+ """
42
+ Process handle skip tool.
43
+
44
+ Return: bool: True -> skip tool, False -> not skip tool.
45
+ """
46
+ return self.handle_skip_tool(
47
+ self.get_remote_config("engine_sca/engine_function/Exclusions.json"),
48
+ self.get_variable("pipeline_name"),
49
+ )
50
+
51
+ def ignore_analysis_pattern(self):
52
+ """
53
+ Handle analysis pattern.
54
+ Return: bool: False -> not scan, True -> scan.
55
+ """
56
+ ignore = self.remote_config["IGNORE_SEARCH_PATTERN"]
57
+ if re.match(ignore, self.pipeline_name, re.IGNORECASE):
58
+ return False
59
+ else:
60
+ return True
61
+
62
+ def skip_from_exclusion(self):
63
+ """
64
+ Handle skip tool.
65
+
66
+ Return: bool: True -> skip tool, False -> not skip tool.
67
+ """
68
+ if (self.pipeline_name in self.exclusions) and (
69
+ self.exclusions[self.pipeline_name].get("SKIP_TOOL", 0)
70
+ ):
71
+ return True
72
+ else:
73
+ return False
@@ -0,0 +1,76 @@
1
+ from devsecops_engine_tools.engine_core.src.domain.model.input_core import InputCore
2
+ from devsecops_engine_tools.engine_core.src.domain.model.threshold import Threshold
3
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.devops_platform_gateway import (
4
+ DevopsPlatformGateway,
5
+ )
6
+ from devsecops_engine_tools.engine_core.src.domain.model.exclusions import Exclusions
7
+
8
+
9
+ class SetInputCore:
10
+ def __init__(self, tool_remote: DevopsPlatformGateway, dict_args, config_tool):
11
+ self.tool_remote = tool_remote
12
+ self.dict_args = dict_args
13
+ self.config_tool = config_tool
14
+
15
+ def get_remote_config(self, file_path):
16
+ """
17
+ Get remote configuration.
18
+
19
+ Returns:
20
+ dict: Remote configuration.
21
+ """
22
+ return self.tool_remote.get_remote_config(self.dict_args["remote_config_repo"], file_path)
23
+
24
+ def get_variable(self, variable):
25
+ """
26
+ Get variable.
27
+
28
+ Returns:
29
+ dict: Remote variable.
30
+ """
31
+ return self.tool_remote.get_variable(variable)
32
+
33
+ def get_exclusions(self, exclusions_data, pipeline_name, tool):
34
+ list_exclusions = []
35
+ for key, value in exclusions_data.items():
36
+ if (key == "All") or (key == pipeline_name):
37
+ if value.get(tool, 0):
38
+ exclusions = [
39
+ Exclusions(
40
+ id=item.get("id", ""),
41
+ where=item.get("where", ""),
42
+ cve_id=item.get("cve_id", ""),
43
+ create_date=item.get("create_date", ""),
44
+ expired_date=item.get("expired_date", ""),
45
+ severity=item.get("severity", ""),
46
+ hu=item.get("hu", ""),
47
+ reason=item.get("reason", "DevSecOps policy"),
48
+ )
49
+ for item in value[tool]
50
+ ]
51
+ list_exclusions.extend(exclusions)
52
+ return list_exclusions
53
+
54
+ def set_input_core(self):
55
+ """
56
+ Set the input core.
57
+
58
+ Returns:
59
+ dict: Input core.
60
+ """
61
+
62
+ return InputCore(
63
+ self.get_exclusions(
64
+ self.get_remote_config("engine_sca/engine_function/Exclusions.json"),
65
+ self.get_variable("pipeline_name"),
66
+ self.config_tool["TOOL"],
67
+ ),
68
+ Threshold(
69
+ self.get_remote_config("engine_sca/engine_function/ConfigTool.json")["THRESHOLD"]
70
+ ),
71
+ None,
72
+ self.get_remote_config("engine_sca/engine_function/ConfigTool.json")["MESSAGE_INFO_ENGINE_FUNCTION"],
73
+ self.get_variable("pipeline_name"),
74
+ self.get_variable("pipeline_name"),
75
+ self.get_variable("stage"),
76
+ )
@@ -0,0 +1,175 @@
1
+ import os
2
+ import glob
3
+ import subprocess
4
+ import re
5
+ from devsecops_engine_tools.engine_sca.engine_function.src.domain.model.gateways.tool_gateway import (
6
+ ToolGateway,
7
+ )
8
+ from devsecops_engine_tools.engine_utilities.utils.logger_info import MyLogger
9
+ from devsecops_engine_tools.engine_utilities import settings
10
+ from devsecops_engine_tools.engine_utilities.twistcli_utils.twistcli_utils import download_twistcli
11
+
12
+
13
+
14
+ logger = MyLogger.__call__(**settings.SETTING_LOGGER).get_logger()
15
+
16
+
17
+ class PrismaCloudManagerScan:
18
+ def __init__(
19
+ self,
20
+ tool_run: ToolGateway,
21
+ dict_args
22
+ ):
23
+ self.tool_run = tool_run
24
+ self.dict_args = dict_args
25
+
26
+ def run_tool_function_sca(
27
+ self,
28
+ remoteconfig,
29
+ secret_tool,
30
+ token_engine_container,
31
+ ):
32
+ prisma_key = (
33
+ f"{secret_tool['access_prisma']}:{secret_tool['token_prisma']}" if secret_tool else token_engine_container
34
+ )
35
+ file_path = os.path.join(
36
+ os.getcwd(), remoteconfig["PRISMA_CLOUD"]["TWISTCLI_PATH"]
37
+ )
38
+ if not os.path.exists(file_path):
39
+ self.download_twistcli(
40
+ file_path,
41
+ prisma_key,
42
+ remoteconfig["PRISMA_CLOUD"]["PRISMA_CONSOLE_URL"],
43
+ remoteconfig["PRISMA_CLOUD"]["PRISMA_API_VERSION"],
44
+ )
45
+ folder_path = self.dict_args["folder_path"]
46
+ function_scan = self._scan_function(
47
+ file_path,
48
+ folder_path,
49
+ remoteconfig,
50
+ prisma_key,
51
+ )
52
+
53
+ return function_scan
54
+
55
+ def _split_prisma_token(self, prisma_key):
56
+ try:
57
+ access_prisma, token_prisma = prisma_key.split(":")
58
+ return access_prisma, token_prisma
59
+ except ValueError:
60
+ raise ValueError("The string is not properly formatted. Make sure it contains a ':'.")
61
+
62
+ def _scan_function(self, file_path, folder_path, remoteconfig, prisma_key):
63
+ function_path = glob.glob(os.path.join(folder_path, "*.zip"))
64
+ if not function_path:
65
+ print("No .zip file found [Scanning skipped]")
66
+ return None
67
+ zip_name = os.path.basename(function_path[0])
68
+ command = (
69
+ file_path,
70
+ "serverless",
71
+ "scan",
72
+ "--address",
73
+ remoteconfig["PRISMA_CLOUD"]["PRISMA_CONSOLE_URL"],
74
+ "--user",
75
+ self._split_prisma_token(prisma_key)[0],
76
+ "--password",
77
+ self._split_prisma_token(prisma_key)[1],
78
+ "--details",
79
+ function_path[0],
80
+ )
81
+ try:
82
+ result = subprocess.run(
83
+ command,
84
+ check=True,
85
+ stdout=subprocess.PIPE,
86
+ stderr=subprocess.PIPE,
87
+ text=True,
88
+ errors="replace"
89
+ )
90
+ print(f"The function {zip_name} was scanned")
91
+ result = self._parse_scan_results(result.stdout)
92
+ return result
93
+
94
+ except subprocess.CalledProcessError as e:
95
+ logger.error(
96
+ f"Error during function scan of {zip_name}"
97
+ f"\n errorcode: {e.returncode}"
98
+ f"\n output: {e.output}"
99
+ )
100
+ def download_twistcli(self, file_path, prisma_key, prisma_console_url, prisma_api_version) -> int:
101
+ """
102
+ Método de instancia separado (lo que usan los tests),
103
+ delega en el util compat 'basic' para no romper aserciones.
104
+ """
105
+ return download_twistcli(file_path, prisma_key, prisma_console_url, prisma_api_version)
106
+
107
+ def _parse_scan_results(self, stdout: str) -> dict:
108
+ def extract_dist(pattern: str) -> dict:
109
+ match = re.search(pattern, stdout)
110
+ return {
111
+ "critical": int(match.group(2)),
112
+ "high": int(match.group(3)),
113
+ "medium": int(match.group(4)),
114
+ "low": int(match.group(5)),
115
+ "total": int(match.group(1))
116
+ } if match else {}
117
+
118
+ def clean_text(text) -> str:
119
+ cleaned_text = text.replace('\x1b[0m', '')
120
+ cleaned_text = cleaned_text.replace('\x1b[91;1m', '')
121
+ cleaned_text = cleaned_text.replace('\x1b[33;1m','')
122
+ return cleaned_text
123
+
124
+ def extract_table() -> list:
125
+ lines = stdout.splitlines()
126
+ table_start = [i for i, line in enumerate(lines) if 'CVE-' in line]
127
+ table_data = []
128
+ if table_start:
129
+ i = table_start[0]
130
+ while i < len(lines):
131
+ if "CVE-" in lines[i]:
132
+ row = lines[i]
133
+ desc_lines = []
134
+ i += 1
135
+ while i < len(lines) and not lines[i].strip().startswith("| CVE-") and not "+---" in lines[i]:
136
+ desc_lines.append(lines[i])
137
+ i += 1
138
+ full_row = row + "\n" + "\n".join(desc_lines)
139
+ table_data.append(full_row)
140
+ else:
141
+ i += 1
142
+
143
+ vulnerabilities = []
144
+ for row in table_data:
145
+ parts = [x.strip() for x in row.split("|")[1:-1]]
146
+ if len(parts) >= 9:
147
+ vuln = {
148
+ "id": clean_text(parts[0]),
149
+ "severity": clean_text(parts[1]),
150
+ "cvss": float(clean_text(parts[2])) if parts[2] else 0.0,
151
+ "packageName": clean_text(parts[3]),
152
+ "packageVersion": clean_text(parts[4]),
153
+ "status": clean_text(parts[5]),
154
+ "publishedDate": clean_text(parts[6]),
155
+ "discoveredDate": clean_text(parts[7]),
156
+ "description": clean_text(parts[8]).replace("u00a0", " ").strip(" .") + "..."
157
+ }
158
+ vulnerabilities.append(vuln)
159
+ return vulnerabilities
160
+
161
+ name_match = re.search(r"Scan results for: function (.+?)\s", stdout)
162
+ function_name = name_match.group(1) if name_match else "unknown.zip"
163
+
164
+ return {
165
+ "results": [
166
+ {
167
+ "name": function_name,
168
+ "complianceDistribution": extract_dist(r"Compliance found for function .*?: total - (\d+), critical - (\d+), high - (\d+), medium - (\d+), low - (\d+)"),
169
+ "complianceScanPassed": "Compliance threshold check results: PASS" in stdout,
170
+ "vulnerabilities": extract_table(),
171
+ "vulnerabilityDistribution": extract_dist(r"Vulnerabilities found for function .*?: total - (\d+), critical - (\d+), high - (\d+), medium - (\d+), low - (\d+)"),
172
+ "vulnerabilityScanPassed": "Vulnerability threshold check results: PASS" in stdout
173
+ }
174
+ ]
175
+ }