devsecops-engine-tools 1.15.0__tar.gz → 1.17.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 (322) hide show
  1. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/PKG-INFO +3 -2
  2. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/applications/runner_engine_core.py +2 -2
  3. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/exclusions.py +4 -0
  4. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/report.py +2 -0
  5. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_risk.py +54 -28
  6. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/defect_dojo.py +45 -12
  7. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/printer_pretty_table.py +66 -13
  8. devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table/printer_rich_table.py +86 -0
  9. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/break_build.py +20 -11
  10. devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +87 -0
  11. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points/entry_point_risk.py +9 -51
  12. devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +45 -0
  13. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_tool.py +18 -3
  14. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers/file_generator_tool.py +5 -6
  15. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/engagement.py +1 -0
  16. devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/utils/__init__.py +0 -0
  17. devsecops_engine_tools-1.17.0/devsecops_engine_tools/version.py +1 -0
  18. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/PKG-INFO +3 -2
  19. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/SOURCES.txt +2 -0
  20. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/requires.txt +1 -0
  21. devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/domain/usecases/handle_filters.py +0 -24
  22. devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_deserealizator.py +0 -35
  23. devsecops_engine_tools-1.15.0/devsecops_engine_tools/version.py +0 -1
  24. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/README.md +0 -0
  25. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/__init__.py +0 -0
  26. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/__init__.py +0 -0
  27. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/__init__.py +0 -0
  28. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/applications/__init__.py +0 -0
  29. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/deployment/__init__.py +0 -0
  30. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/deployment/infrastructure/__init__.py +0 -0
  31. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/__init__.py +0 -0
  32. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/__init__.py +0 -0
  33. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/customs_exceptions.py +0 -0
  34. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/finding.py +0 -0
  35. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/__init__.py +0 -0
  36. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/devops_platform_gateway.py +0 -0
  37. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/metrics_manager_gateway.py +0 -0
  38. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/printer_table_gateway.py +0 -0
  39. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/secrets_manager_gateway.py +0 -0
  40. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/gateway/vulnerability_management_gateway.py +0 -0
  41. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/input_core.py +0 -0
  42. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/level_compliance.py +0 -0
  43. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/level_vulnerability.py +0 -0
  44. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/threshold.py +0 -0
  45. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/model/vulnerability_management.py +0 -0
  46. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/usecases/__init__.py +0 -0
  47. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/usecases/break_build.py +0 -0
  48. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/usecases/handle_scan.py +0 -0
  49. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/domain/usecases/metrics_manager.py +0 -0
  50. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/__init__.py +0 -0
  51. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/__init__.py +0 -0
  52. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/__init__.py +0 -0
  53. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/s3_manager.py +0 -0
  54. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/aws/secrets_manager.py +0 -0
  55. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/__init__.py +0 -0
  56. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/azure/azure_devops.py +0 -0
  57. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/defect_dojo/__init__.py +0 -0
  58. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/__init__.py +0 -0
  59. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/github/github_actions.py +0 -0
  60. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_pretty_table/__init__.py +0 -0
  61. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/printer_rich_table}/__init__.py +0 -0
  62. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_core/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local}/__init__.py +0 -0
  63. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/driven_adapters/runtime_local/runtime_local.py +0 -0
  64. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_core/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_core/src/infrastructure/entry_points}/__init__.py +0 -0
  65. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/entry_points/entry_point_core.py +0 -0
  66. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_core/src/infrastructure/helpers}/__init__.py +0 -0
  67. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/aws.py +0 -0
  68. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_core/src/infrastructure/helpers/util.py +0 -0
  69. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast}/__init__.py +0 -0
  70. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src}/__init__.py +0 -0
  71. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/applications}/__init__.py +0 -0
  72. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/deployment}/__init__.py +0 -0
  73. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/deployment/infrastructure}/__init__.py +0 -0
  74. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/domain}/__init__.py +0 -0
  75. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/domain/model}/__init__.py +0 -0
  76. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/domain/usecases}/__init__.py +0 -0
  77. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/infrastructure}/__init__.py +0 -0
  78. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/infrastructure/driven_adapters}/__init__.py +0 -0
  79. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_dast/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/infrastructure/entry_points}/__init__.py +0 -0
  80. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_dast/src/infrastructure/helpers}/__init__.py +0 -0
  81. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk}/__init__.py +0 -0
  82. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src}/__init__.py +0 -0
  83. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/applications}/__init__.py +0 -0
  84. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/applications/runner_engine_risk.py +0 -0
  85. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/deployment}/__init__.py +0 -0
  86. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/deployment/infrastructure}/__init__.py +0 -0
  87. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/domain}/__init__.py +0 -0
  88. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/domain/model}/__init__.py +0 -0
  89. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/domain/model/gateways}/__init__.py +0 -0
  90. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/domain/model/gateways/add_epss_gateway.py +0 -0
  91. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/domain/usecases}/__init__.py +0 -0
  92. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/add_data.py +0 -0
  93. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/domain/usecases/get_exclusions.py +0 -0
  94. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/infrastructure}/__init__.py +0 -0
  95. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters}/__init__.py +0 -0
  96. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv}/__init__.py +0 -0
  97. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_risk/src/infrastructure/driven_adapters/first_csv/first_epss_csv.py +0 -0
  98. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_risk/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/infrastructure/entry_points}/__init__.py +0 -0
  99. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_risk/src/infrastructure/helpers}/__init__.py +0 -0
  100. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast}/__init__.py +0 -0
  101. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code}/__init__.py +0 -0
  102. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src}/__init__.py +0 -0
  103. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/applications}/__init__.py +0 -0
  104. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/applications/runner_engine_code.py +0 -0
  105. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment}/__init__.py +0 -0
  106. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/deployment/infrastructure}/__init__.py +0 -0
  107. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/domain}/__init__.py +0 -0
  108. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model}/__init__.py +0 -0
  109. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/config_tool.py +0 -0
  110. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways}/__init__.py +0 -0
  111. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/model/gateways/tool_gateway.py +0 -0
  112. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases}/__init__.py +0 -0
  113. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/domain/usecases/code_scan.py +0 -0
  114. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure}/__init__.py +0 -0
  115. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters}/__init__.py +0 -0
  116. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer}/__init__.py +0 -0
  117. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_deserealizator.py +0 -0
  118. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/driven_adapters/bearer/bearer_tool.py +0 -0
  119. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points}/__init__.py +0 -0
  120. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  121. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_code/src/infrastructure/helpers}/__init__.py +0 -0
  122. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac}/__init__.py +0 -0
  123. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src}/__init__.py +0 -0
  124. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/applications}/__init__.py +0 -0
  125. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/applications/runner_iac_scan.py +0 -0
  126. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment}/__init__.py +0 -0
  127. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/deployment/infrastructure}/__init__.py +0 -0
  128. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain}/__init__.py +0 -0
  129. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model}/__init__.py +0 -0
  130. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/config_tool.py +0 -0
  131. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways}/__init__.py +0 -0
  132. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/model/gateways/tool_gateway.py +0 -0
  133. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases}/__init__.py +0 -0
  134. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/domain/usecases/iac_scan.py +0 -0
  135. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure}/__init__.py +0 -0
  136. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters}/__init__.py +0 -0
  137. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov}/__init__.py +0 -0
  138. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/checkov/checkov_config.py +0 -0
  139. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics}/__init__.py +0 -0
  140. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_deserealizator.py +0 -0
  141. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kics/kics_tool.py +0 -0
  142. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape}/__init__.py +0 -0
  143. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_deserealizator.py +0 -0
  144. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/driven_adapters/kubescape/kubescape_tool.py +0 -0
  145. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points}/__init__.py +0 -0
  146. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  147. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_iac/src/infrastructure/helpers}/__init__.py +0 -0
  148. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret}/__init__.py +0 -0
  149. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src}/__init__.py +0 -0
  150. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/applications}/__init__.py +0 -0
  151. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/applications/runner_secret_scan.py +0 -0
  152. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment}/__init__.py +0 -0
  153. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/deployment/infrastructure}/__init__.py +0 -0
  154. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain}/__init__.py +0 -0
  155. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/DeserializeConfigTool.py +0 -0
  156. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model}/__init__.py +0 -0
  157. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway}/__init__.py +0 -0
  158. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/gateway_deserealizator.py +0 -0
  159. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/model/gateway/tool_gateway.py +0 -0
  160. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases}/__init__.py +0 -0
  161. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/secret_scan.py +0 -0
  162. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/domain/usecases/set_input_core.py +0 -0
  163. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure}/__init__.py +0 -0
  164. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters}/__init__.py +0 -0
  165. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog}/__init__.py +0 -0
  166. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_deserealizator.py +0 -0
  167. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/driven_adapters/trufflehog/trufflehog_run.py +0 -0
  168. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points}/__init__.py +0 -0
  169. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sast/engine_secret/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  170. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca}/__init__.py +0 -0
  171. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container}/__init__.py +0 -0
  172. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src}/__init__.py +0 -0
  173. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/applications}/__init__.py +0 -0
  174. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/applications/runner_container_scan.py +0 -0
  175. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment}/__init__.py +0 -0
  176. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/deployment/infrastructure}/__init__.py +0 -0
  177. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/domain}/__init__.py +0 -0
  178. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model}/__init__.py +0 -0
  179. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways}/__init__.py +0 -0
  180. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/deserealizator_gateway.py +0 -0
  181. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/images_gateway.py +0 -0
  182. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/model/gateways/tool_gateway.py +0 -0
  183. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases}/__init__.py +0 -0
  184. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/container_sca_scan.py +0 -0
  185. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  186. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/domain/usecases/set_input_core.py +0 -0
  187. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure}/__init__.py +0 -0
  188. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters}/__init__.py +0 -0
  189. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker}/__init__.py +0 -0
  190. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/docker/docker_images.py +0 -0
  191. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud}/__init__.py +0 -0
  192. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_cloud_manager_scan.py +0 -0
  193. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/prisma_cloud/prisma_deserialize_output.py +0 -0
  194. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool}/__init__.py +0 -0
  195. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_deserialize_output.py +0 -0
  196. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/driven_adapters/trivy_tool/trivy_manager_scan.py +0 -0
  197. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points}/__init__.py +0 -0
  198. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  199. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_container/src/infrastructure/helpers}/__init__.py +0 -0
  200. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies}/__init__.py +0 -0
  201. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src}/__init__.py +0 -0
  202. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications}/__init__.py +0 -0
  203. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/applications/runner_dependencies_scan.py +0 -0
  204. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment}/__init__.py +0 -0
  205. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/deployment/infrastructure}/__init__.py +0 -0
  206. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain}/__init__.py +0 -0
  207. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model}/__init__.py +0 -0
  208. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways}/__init__.py +0 -0
  209. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/deserializator_gateway.py +0 -0
  210. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/model/gateways/tool_gateway.py +0 -0
  211. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases}/__init__.py +0 -0
  212. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/dependencies_sca_scan.py +0 -0
  213. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/handle_remote_config_patterns.py +0 -0
  214. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/domain/usecases/set_input_core.py +0 -0
  215. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure}/__init__.py +0 -0
  216. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters}/__init__.py +0 -0
  217. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check}/__init__.py +0 -0
  218. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_deserialize.py +0 -0
  219. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/dependency_check/dependency_check_tool.py +0 -0
  220. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool}/__init__.py +0 -0
  221. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_deserialize_output.py +0 -0
  222. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/driven_adapters/xray_tool/xray_manager_scan.py +0 -0
  223. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points}/__init__.py +0 -0
  224. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/entry_points/entry_point_tool.py +0 -0
  225. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers}/__init__.py +0 -0
  226. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_sca/engine_dependencies/src/infrastructure/helpers/get_artifacts.py +0 -0
  227. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/azuredevops → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities}/__init__.py +0 -0
  228. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/azuredevops}/__init__.py +0 -0
  229. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/azuredevops/models → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure}/__init__.py +0 -0
  230. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/azuredevops/infrastructure/azure_devops_api.py +0 -0
  231. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzureMessageLoggingPipeline.py +0 -0
  232. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/azuredevops/models/AzurePredefinedVariables.py +0 -0
  233. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/azuredevops/models}/__init__.py +0 -0
  234. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/__init__.py +0 -0
  235. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/applications}/__init__.py +0 -0
  236. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/connect.py +0 -0
  237. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/defect_dojo.py +0 -0
  238. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/engagement.py +0 -0
  239. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/finding.py +0 -0
  240. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/applications/product.py +0 -0
  241. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain}/__init__.py +0 -0
  242. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models}/__init__.py +0 -0
  243. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/cmdb.py +0 -0
  244. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/finding.py +0 -0
  245. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product.py +0 -0
  246. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_list.py +0 -0
  247. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type.py +0 -0
  248. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/product_type_list.py +0 -0
  249. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/models/scan_configuration.py +0 -0
  250. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects}/__init__.py +0 -0
  251. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/finding.py +0 -0
  252. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/request_objects/import_scan.py +0 -0
  253. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers}/__init__.py +0 -0
  254. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/finding.py +0 -0
  255. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/serializers/import_scan.py +0 -0
  256. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case}/__init__.py +0 -0
  257. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/cmdb.py +0 -0
  258. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/engagement.py +0 -0
  259. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/finding.py +0 -0
  260. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/import_scan.py +0 -0
  261. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/domain/user_case/product.py +0 -0
  262. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/hello_world.py +0 -0
  263. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure}/__init__.py +0 -0
  264. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters}/__init__.py +0 -0
  265. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/cmdb.py +0 -0
  266. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/engagement.py +0 -0
  267. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/finding.py +0 -0
  268. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/import_scan.py +0 -0
  269. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product.py +0 -0
  270. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/product_type.py +0 -0
  271. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/scan_configurations.py +0 -0
  272. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings}/__init__.py +0 -0
  273. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/driver_adapters/settings/settings.py +0 -0
  274. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/git_cli → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/defect_dojo/infraestructure/repository}/__init__.py +0 -0
  275. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/git_cli/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/git_cli}/__init__.py +0 -0
  276. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/git_cli/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/git_cli/infrastructure}/__init__.py +0 -0
  277. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/git_cli/infrastructure/git_run.py +0 -0
  278. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/git_cli/model/gateway → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/git_cli/model}/__init__.py +0 -0
  279. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/github → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/git_cli/model/gateway}/__init__.py +0 -0
  280. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/git_cli/model/gateway/git_gateway.py +0 -0
  281. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/github/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/github}/__init__.py +0 -0
  282. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/github/models → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/github/infrastructure}/__init__.py +0 -0
  283. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/github/infrastructure/github_api.py +0 -0
  284. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/github/models/GithubPredefinedVariables.py +0 -0
  285. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/input_validations → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/github/models}/__init__.py +0 -0
  286. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/input_validations}/__init__.py +0 -0
  287. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/input_validations/env_utils.py +0 -0
  288. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/input_validations/validate_input_with_regex_letters_number_and_only.py +0 -0
  289. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/settings.py +0 -0
  290. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube}/__init__.py +0 -0
  291. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/applications → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src}/__init__.py +0 -0
  292. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/applications}/__init__.py +0 -0
  293. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/applications/runner_report_sonar.py +0 -0
  294. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain}/__init__.py +0 -0
  295. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model}/__init__.py +0 -0
  296. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways}/__init__.py +0 -0
  297. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/model/gateways/sonar_gateway.py +0 -0
  298. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases}/__init__.py +0 -0
  299. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/domain/usecases/report_sonar.py +0 -0
  300. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure}/__init__.py +0 -0
  301. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters}/__init__.py +0 -0
  302. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube}/__init__.py +0 -0
  303. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/driven_adapters/sonarqube/sonarqube_report.py +0 -0
  304. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points}/__init__.py +0 -0
  305. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/entry_points/entry_point_report_sonar.py +0 -0
  306. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/ssh → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers}/__init__.py +0 -0
  307. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/sonarqube/src/infrastructure/helpers/utils.py +0 -0
  308. {devsecops_engine_tools-1.15.0/devsecops_engine_tools/engine_utilities/utils → devsecops_engine_tools-1.17.0/devsecops_engine_tools/engine_utilities/ssh}/__init__.py +0 -0
  309. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/ssh/managment_private_key.py +0 -0
  310. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/api_error.py +0 -0
  311. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/dataclass_classmethod.py +0 -0
  312. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/datetime_parsing.py +0 -0
  313. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/logger_info.py +0 -0
  314. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/name_conversion.py +0 -0
  315. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/printers.py +0 -0
  316. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/session_manager.py +0 -0
  317. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools/engine_utilities/utils/utils.py +0 -0
  318. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/dependency_links.txt +0 -0
  319. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/entry_points.txt +0 -0
  320. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/devsecops_engine_tools.egg-info/top_level.txt +0 -0
  321. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/setup.cfg +0 -0
  322. {devsecops_engine_tools-1.15.0 → devsecops_engine_tools-1.17.0}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: devsecops-engine-tools
3
- Version: 1.15.0
3
+ Version: 1.17.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
@@ -25,6 +25,7 @@ Requires-Dist: distro==1.9.0
25
25
  Requires-Dist: boto3==1.34.157
26
26
  Requires-Dist: docker==7.1.0
27
27
  Requires-Dist: setuptools==72.1.0
28
+ Requires-Dist: rich==13.9.4
28
29
 
29
30
  # DevSecOps Engine Tools
30
31
 
@@ -67,7 +68,7 @@ pip3 install devsecops-engine-tools
67
68
  ### Scan running - flags (CLI)
68
69
 
69
70
  ```bash
70
- devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --tool ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --folder_path ["Folder path scan engine_iac, engine_code and engine_dependencies"] --platform ["k8s","cloudformation","docker", "openapi"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit"] --image_to_scan ["image_to_scan"]
71
+ devsecops-engine-tools --platform_devops ["local","azure","github"] --remote_config_repo ["remote_config_repo"] --tool ["engine_iac", "engine_dast", "engine_secret", "engine_dependencies", "engine_container", "engine_risk", "engine_code"] --folder_path ["Folder path scan engine_iac, engine_code and engine_dependencies"] --platform ["k8s","cloudformation","docker", "openapi", "terraform"] --use_secrets_manager ["false", "true"] --use_vulnerability_management ["false", "true"] --send_metrics ["false", "true"] --token_cmdb ["token_cmdb"] --token_vulnerability_management ["token_vulnerability_management"] --token_engine_container ["token_engine_container"] --token_engine_dependencies ["token_engine_dependencies"] --token_external_checks ["token_external_checks"] --xray_mode ["scan", "audit"] --image_to_scan ["image_to_scan"]
71
72
  ```
72
73
 
73
74
  ### Structure Remote Config
@@ -97,7 +97,7 @@ def get_inputs_from_cli(args):
97
97
  parser.add_argument(
98
98
  "-p",
99
99
  "--platform",
100
- type=parse_choices({"all", "docker", "k8s", "cloudformation", "openapi"}),
100
+ type=parse_choices({"all", "docker", "k8s", "cloudformation", "openapi", "terraform"}),
101
101
  required=False,
102
102
  default="all",
103
103
  help="Platform to scan, only apply engine_iac tool",
@@ -191,8 +191,8 @@ def application_core():
191
191
  "github": GithubActions(),
192
192
  "local": RuntimeLocal(),
193
193
  }.get(args["platform_devops"])
194
- printer_table_gateway = PrinterPrettyTable()
195
194
  metrics_manager_gateway = S3Manager()
195
+ printer_table_gateway = PrinterPrettyTable()
196
196
 
197
197
  init_engine_core(
198
198
  vulnerability_management_gateway,
@@ -12,3 +12,7 @@ class Exclusions:
12
12
  self.severity = kwargs.get("severity", "")
13
13
  self.hu = kwargs.get("hu", "")
14
14
  self.reason = kwargs.get("reason", "Risk Accepted")
15
+ self.vm_id = kwargs.get("vm_id", "")
16
+ self.vm_id_url = kwargs.get("vm_id_url", "")
17
+ self.service = kwargs.get("service", "")
18
+ self.tags = kwargs.get("tags", [])
@@ -4,6 +4,8 @@ from dataclasses import dataclass
4
4
  @dataclass
5
5
  class Report:
6
6
  def __init__(self, **kwargs):
7
+ self.vm_id = kwargs.get("vm_id", "")
8
+ self.vm_id_url = kwargs.get("vm_id_url", "")
7
9
  self.id = kwargs.get("id", [])
8
10
  self.vuln_id_from_tool = kwargs.get("vuln_id_from_tool", "")
9
11
  self.where = kwargs.get("where", "")
@@ -51,7 +51,7 @@ class HandleRisk:
51
51
  "Error getting finding list in handle risk: {0}".format(str(e))
52
52
  )
53
53
 
54
- def _filter_engagements(self, engagements, service, risk_config):
54
+ def _filter_engagements(self, engagements, service, initial_services, risk_config):
55
55
  filtered_engagements = []
56
56
  min_word_length = risk_config["HANDLE_SERVICE_NAME"]["MIN_WORD_LENGTH"]
57
57
  words = [
@@ -65,20 +65,22 @@ class HandleRisk:
65
65
  min_word_amount = risk_config["HANDLE_SERVICE_NAME"]["MIN_WORD_AMOUNT"]
66
66
  endings = risk_config["HANDLE_SERVICE_NAME"]["CHECK_ENDING"]
67
67
 
68
+ initial_services_lower = [service.lower() for service in initial_services]
69
+
68
70
  for engagement in engagements:
69
- if service.lower() == engagement.name.lower():
70
- filtered_engagements += [engagement.name]
71
+ if engagement.name.lower() in initial_services_lower:
72
+ filtered_engagements += [engagement]
71
73
  elif re.search(check_words_regex, engagement.name.lower()) and (
72
74
  sum(1 for word in words if word.lower() in engagement.name.lower())
73
75
  >= min_word_amount
74
76
  ):
75
- filtered_engagements += [engagement.name]
77
+ filtered_engagements += [engagement]
76
78
  elif endings:
77
79
  if any(
78
80
  (service.lower() + ending.lower() == engagement.name.lower())
79
81
  for ending in endings
80
82
  ):
81
- filtered_engagements += [engagement.name]
83
+ filtered_engagements += [engagement]
82
84
 
83
85
  return filtered_engagements
84
86
 
@@ -94,15 +96,28 @@ class HandleRisk:
94
96
  services_to_exclude = set(
95
97
  risk_exclusions[pipeline_name]["SKIP_SERVICE"].get("services", [])
96
98
  )
97
- service_set = set(service_list)
98
-
99
- remaining_services = list(service_set - services_to_exclude)
100
- service_excluded = list(service_set & services_to_exclude)
101
99
 
102
- print(f"Services to exclude: {service_excluded}")
103
- logger.info(f"Services to exclude: {service_excluded}")
100
+ remaining_engagements = [
101
+ engagement
102
+ for engagement in service_list
103
+ if engagement.name.lower()
104
+ not in [service.lower() for service in services_to_exclude]
105
+ ]
106
+ excluded_engagements = [
107
+ engagement
108
+ for engagement in service_list
109
+ if engagement.name.lower()
110
+ in [service.lower() for service in services_to_exclude]
111
+ ]
112
+
113
+ print(
114
+ f"Services to exclude: {[engagement.name for engagement in excluded_engagements]}"
115
+ )
116
+ logger.info(
117
+ f"Services to exclude: {[engagement.name for engagement in excluded_engagements]}"
118
+ )
104
119
 
105
- return remaining_services
120
+ return remaining_engagements
106
121
  return service_list
107
122
 
108
123
  def _should_skip_analysis(self, remote_config, pipeline_name, exclusions):
@@ -141,6 +156,15 @@ class HandleRisk:
141
156
 
142
157
  service = pipeline_name
143
158
  service_list = []
159
+ initial_services = []
160
+ initial_services += [service]
161
+
162
+ match_parent = re.match(
163
+ risk_config["PARENT_ANALYSIS"]["REGEX_GET_PARENT"], service
164
+ )
165
+ if risk_config["PARENT_ANALYSIS"]["ENABLED"].lower() == "true" and match_parent:
166
+ parent_service = match_parent.group(0)
167
+ initial_services += [parent_service]
144
168
 
145
169
  if risk_config["HANDLE_SERVICE_NAME"]["ENABLED"].lower() == "true":
146
170
  service = next(
@@ -156,7 +180,7 @@ class HandleRisk:
156
180
  )
157
181
  if match_service_code:
158
182
  service_code = match_service_code.group(0)
159
- service_list += [
183
+ initial_services += [
160
184
  service.format(service_code=service_code)
161
185
  for service in risk_config["HANDLE_SERVICE_NAME"]["ADD_SERVICES"]
162
186
  ]
@@ -164,31 +188,33 @@ class HandleRisk:
164
188
  service_code, dict_args, secret_tool, remote_config
165
189
  )
166
190
  service_list += self._filter_engagements(
167
- engagements, service, risk_config
191
+ engagements, service, initial_services, risk_config
168
192
  )
193
+ else:
194
+ for service in initial_services:
195
+ engagements = self.vulnerability_management.get_active_engagements(
196
+ service, dict_args, secret_tool, remote_config
197
+ )
198
+ for engagement in engagements:
199
+ if engagement.name.lower() == service.lower():
200
+ service_list += [engagement]
201
+ break
169
202
 
170
- service_list += [service]
171
-
172
- match_parent = re.match(
173
- risk_config["PARENT_ANALYSIS"]["REGEX_GET_PARENT"], service
174
- )
175
- if risk_config["PARENT_ANALYSIS"]["ENABLED"].lower() == "true" and match_parent:
176
- parent_service = match_parent.group(0)
177
- service_list += [parent_service]
178
-
179
- service_list = list(set(service_list))
180
203
  new_service_list = self._exclude_services(
181
204
  dict_args, pipeline_name, service_list
182
205
  )
183
206
 
184
- print(f"Services to analyze: {new_service_list}")
185
- logger.info(f"Services to analyze: {new_service_list}")
207
+ for engagement in new_service_list:
208
+ print(f"Service to analyze: {engagement.name}, URL: {engagement.vm_url}")
209
+ logger.info(
210
+ f"Service to analyze: {engagement.name}, URL: {engagement.vm_url}"
211
+ )
186
212
 
187
213
  findings = []
188
214
  exclusions = []
189
215
  for service in new_service_list:
190
216
  findings_list, exclusions_list = self._get_all_from_vm(
191
- dict_args, secret_tool, remote_config, service
217
+ dict_args, secret_tool, remote_config, service.name
192
218
  )
193
219
  findings += findings_list
194
220
  exclusions += exclusions_list
@@ -197,7 +223,7 @@ class HandleRisk:
197
223
  dict_args,
198
224
  findings,
199
225
  exclusions,
200
- new_service_list,
226
+ [service.name for service in new_service_list],
201
227
  self.devops_platform_gateway,
202
228
  self.print_table_gateway,
203
229
  )
@@ -263,6 +263,7 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
263
263
  max_retries = config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"][
264
264
  "MAX_RETRIES_QUERY"
265
265
  ]
266
+ host_dd = config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["HOST_DEFECT_DOJO"]
266
267
 
267
268
  findings = self._get_findings(
268
269
  self._get_session_manager(dict_args, secret_tool, config_tool),
@@ -273,13 +274,13 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
273
274
 
274
275
  all_findings = list(
275
276
  map(
276
- partial(self._create_report),
277
+ partial(self._create_report, host_dd=host_dd),
277
278
  findings,
278
279
  )
279
280
  )
280
281
 
281
282
  all_exclusions = self._get_report_exclusions(
282
- all_findings, self._format_date_to_dd_format
283
+ all_findings, self._format_date_to_dd_format, host_dd=host_dd
283
284
  )
284
285
 
285
286
  return all_findings, all_exclusions
@@ -310,7 +311,14 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
310
311
  "active": "true",
311
312
  }
312
313
 
313
- return Engagement.get_engagements(request_is, request_active).results
314
+ engagements = Engagement.get_engagements(request_is, request_active).results
315
+
316
+ host_dd = config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["HOST_DEFECT_DOJO"]
317
+
318
+ for engagement in engagements:
319
+ engagement.vm_url = f"{host_dd}/engagement/{engagement.id}/finding/open"
320
+
321
+ return engagements
314
322
 
315
323
  except Exception as ex:
316
324
  raise ExceptionGettingEngagements(
@@ -326,25 +334,25 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
326
334
  config_tool["VULNERABILITY_MANAGER"]["DEFECT_DOJO"]["HOST_DEFECT_DOJO"],
327
335
  )
328
336
 
329
- def _get_report_exclusions(self, total_findings, date_fn):
337
+ def _get_report_exclusions(self, total_findings, date_fn, host_dd):
330
338
  exclusions = []
331
339
  for finding in total_findings:
332
340
  if finding.risk_accepted:
333
341
  exclusions.append(
334
- self._create_exclusion(
335
- finding, date_fn, "engine_risk", "Risk Accepted"
342
+ self._create_report_exclusion(
343
+ finding, date_fn, "engine_risk", "Risk Accepted", host_dd
336
344
  )
337
345
  )
338
346
  elif finding.false_p:
339
347
  exclusions.append(
340
- self._create_exclusion(
341
- finding, date_fn, "engine_risk", "False Positive"
348
+ self._create_report_exclusion(
349
+ finding, date_fn, "engine_risk", "False Positive", host_dd
342
350
  )
343
351
  )
344
352
  elif finding.risk_status == "Transfer Accepted":
345
353
  exclusions.append(
346
- self._create_exclusion(
347
- finding, date_fn, "engine_risk", "Transferred Finding"
354
+ self._create_report_exclusion(
355
+ finding, date_fn, "engine_risk", "Transferred Finding", host_dd
348
356
  )
349
357
  )
350
358
  return exclusions
@@ -381,7 +389,7 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
381
389
  logger.error("Maximum number of retries reached, aborting.")
382
390
  raise e
383
391
 
384
- def _create_exclusion(self, finding, date_fn, tool, reason):
392
+ def _date_reason_based(self, finding, date_fn, reason):
385
393
  if reason == "False Positive":
386
394
  create_date = date_fn(finding.last_status_update)
387
395
  expired_date = date_fn(None)
@@ -393,6 +401,24 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
393
401
  create_date = date_fn(last_accepted_risk["created"])
394
402
  expired_date = date_fn(last_accepted_risk["expiration_date"])
395
403
 
404
+ return create_date, expired_date
405
+
406
+
407
+ def _create_exclusion(self, finding, date_fn, tool, reason):
408
+ create_date, expired_date = self._date_reason_based(finding, date_fn, reason)
409
+
410
+ return Exclusions(
411
+ id=finding.vuln_id_from_tool,
412
+ where=self._get_where(finding, tool),
413
+ create_date=create_date,
414
+ expired_date=expired_date,
415
+ severity=finding.severity,
416
+ reason=reason,
417
+ )
418
+
419
+ def _create_report_exclusion(self, finding, date_fn, tool, reason, host_dd):
420
+ create_date, expired_date = self._date_reason_based(finding, date_fn, reason)
421
+
396
422
  return Exclusions(
397
423
  id=finding.vuln_id_from_tool,
398
424
  where=self._get_where(finding, tool),
@@ -400,10 +426,16 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
400
426
  expired_date=expired_date,
401
427
  severity=finding.severity,
402
428
  reason=reason,
429
+ vm_id=str(finding.vm_id),
430
+ vm_id_url=f"{host_dd}/finding/{finding.vm_id}",
431
+ service=finding.service,
432
+ tags=finding.tags,
403
433
  )
404
434
 
405
- def _create_report(self, finding):
435
+ def _create_report(self, finding, host_dd):
406
436
  return Report(
437
+ vm_id=str(finding.id),
438
+ vm_id_url=f"{host_dd}/finding/{finding.id}",
407
439
  id=finding.vulnerability_ids,
408
440
  vuln_id_from_tool=finding.vuln_id_from_tool,
409
441
  status=finding.display_status,
@@ -449,5 +481,6 @@ class DefectDojoPlatform(VulnerabilityManagementGateway):
449
481
  elif tool == "engine_risk":
450
482
  for tag in finding.tags:
451
483
  return self._get_where(finding, tag)
484
+ return finding.file_path
452
485
  else:
453
486
  return finding.file_path
@@ -10,7 +10,7 @@ from devsecops_engine_tools.engine_core.src.domain.model.report import (
10
10
  Report,
11
11
  )
12
12
  from devsecops_engine_tools.engine_core.src.infrastructure.helpers.util import (
13
- format_date
13
+ format_date,
14
14
  )
15
15
  from prettytable import PrettyTable, DOUBLE_BORDER
16
16
 
@@ -63,24 +63,20 @@ class PrinterPrettyTable(PrinterTableGateway):
63
63
  print(sorted_table)
64
64
 
65
65
  def print_table_report(self, report_list: "list[Report]"):
66
- headers = ["Risk Score", "Severity", "ID", "Tags", "Where", "Service"]
66
+ headers = ["Risk Score", "VM ID", "Services", "Tags"]
67
67
  table = PrettyTable(headers)
68
68
  for report in report_list:
69
69
  row_data = [
70
70
  report.risk_score,
71
- report.severity.lower(),
72
- report.vuln_id_from_tool if report.vuln_id_from_tool else report.id,
73
- report.tags,
74
- report.where,
75
- report.service
71
+ self._check_spaces(report.vm_id),
72
+ self._check_spaces(report.service),
73
+ ", ".join(report.tags),
76
74
  ]
77
75
  table.add_row(row_data)
78
76
 
79
77
  sorted_table = PrettyTable()
80
78
  sorted_table.field_names = table.field_names
81
- sorted_table.add_rows(
82
- sorted(table._rows, key=lambda row: row[0], reverse=True)
83
- )
79
+ sorted_table.add_rows(sorted(table._rows, key=lambda row: row[0], reverse=True))
84
80
 
85
81
  for column in table.field_names:
86
82
  sorted_table.align[column] = "l"
@@ -90,9 +86,52 @@ class PrinterPrettyTable(PrinterTableGateway):
90
86
  if len(sorted_table.rows) > 0:
91
87
  print(sorted_table)
92
88
 
89
+ def print_table_report_exlusions(self, exclusions):
90
+ if exclusions:
91
+ headers = [
92
+ "VM ID",
93
+ "Tags",
94
+ "Services",
95
+ "Created Date",
96
+ "Expired Date",
97
+ "Reason",
98
+ ]
99
+
100
+ table = PrettyTable(headers)
101
+
102
+ for exclusion in exclusions:
103
+ row_data = [
104
+ self._check_spaces(exclusion["vm_id"]),
105
+ ", ".join(exclusion["tags"]),
106
+ self._check_spaces(exclusion["service"]),
107
+ format_date(exclusion["create_date"], "%d%m%Y", "%d/%m/%Y"),
108
+ (
109
+ format_date(exclusion["expired_date"], "%d%m%Y", "%d/%m/%Y")
110
+ if exclusion["expired_date"]
111
+ and exclusion["expired_date"] != "undefined"
112
+ else "NA"
113
+ ),
114
+ exclusion["reason"],
115
+ ]
116
+ table.add_row(row_data)
117
+
118
+ for column in table.field_names:
119
+ table.align[column] = "l"
120
+
121
+ table.set_style(DOUBLE_BORDER)
122
+ if len(table.rows) > 0:
123
+ print(table)
124
+
93
125
  def print_table_exclusions(self, exclusions):
94
- if (exclusions):
95
- headers = ["Severity", "ID", "Where", "Create Date", "Expired Date", "Reason"]
126
+ if exclusions:
127
+ headers = [
128
+ "Severity",
129
+ "ID",
130
+ "Where",
131
+ "Create Date",
132
+ "Expired Date",
133
+ "Reason",
134
+ ]
96
135
 
97
136
  table = PrettyTable(headers)
98
137
 
@@ -102,7 +141,12 @@ class PrinterPrettyTable(PrinterTableGateway):
102
141
  exclusion["id"],
103
142
  exclusion["where"],
104
143
  format_date(exclusion["create_date"], "%d%m%Y", "%d/%m/%Y"),
105
- format_date(exclusion["expired_date"], "%d%m%Y", "%d/%m/%Y") if exclusion["expired_date"] and exclusion["expired_date"] != "undefined" else "NA",
144
+ (
145
+ format_date(exclusion["expired_date"], "%d%m%Y", "%d/%m/%Y")
146
+ if exclusion["expired_date"]
147
+ and exclusion["expired_date"] != "undefined"
148
+ else "NA"
149
+ ),
106
150
  exclusion["reason"],
107
151
  ]
108
152
  table.add_row(row_data)
@@ -113,3 +157,12 @@ class PrinterPrettyTable(PrinterTableGateway):
113
157
  table.set_style(DOUBLE_BORDER)
114
158
  if len(table.rows) > 0:
115
159
  print(table)
160
+
161
+ def _check_spaces(self, value):
162
+ values = value.split()
163
+ new_value = ""
164
+ if len(values) > 1:
165
+ new_value = "\n".join(values)
166
+ else:
167
+ new_value = f"{values[0]}"
168
+ return new_value
@@ -0,0 +1,86 @@
1
+ from dataclasses import dataclass
2
+
3
+ from devsecops_engine_tools.engine_core.src.domain.model.gateway.printer_table_gateway import (
4
+ PrinterTableGateway,
5
+ )
6
+ from devsecops_engine_tools.engine_core.src.domain.model.finding import (
7
+ Finding,
8
+ )
9
+ from devsecops_engine_tools.engine_core.src.domain.model.report import (
10
+ Report,
11
+ )
12
+ from devsecops_engine_tools.engine_core.src.infrastructure.helpers.util import (
13
+ format_date,
14
+ )
15
+ from rich.console import Console
16
+ from rich.table import Table
17
+ from rich import box
18
+
19
+
20
+ @dataclass
21
+ class PrinterRichTable(PrinterTableGateway):
22
+ def print_table_findings(self, finding_list: "list[Finding]"):
23
+ # To implement
24
+ return
25
+
26
+ def print_table_report(self, report_list: "list[Report]"):
27
+ sorted_report_list = sorted(
28
+ report_list, key=lambda report: report.risk_score, reverse=True
29
+ )
30
+ headers = ["Risk Score", "ID", "Tags", "Services"]
31
+ table = Table(
32
+ show_header=True, header_style="bold magenta", box=box.DOUBLE_EDGE
33
+ )
34
+ for header in headers:
35
+ table.add_column(header)
36
+ for report in sorted_report_list:
37
+ row_data = [
38
+ str(report.risk_score),
39
+ self._check_spaces(report.vm_id, report.vm_id_url),
40
+ ", ".join(report.tags),
41
+ report.service,
42
+ ]
43
+ table.add_row(*row_data)
44
+ console = Console()
45
+ console.print(table)
46
+
47
+ def print_table_exclusions(self, exclusions_list):
48
+ headers = []
49
+ if exclusions_list:
50
+ headers = ["ID", "Tags", "Service", "Create Date", "Expired Date", "Reason"]
51
+ table = Table(
52
+ show_header=True, header_style="bold magenta", box=box.DOUBLE_EDGE
53
+ )
54
+ for header in headers:
55
+ table.add_column(header)
56
+ for exclusion in exclusions_list:
57
+ row_data = [
58
+ self._check_spaces(exclusion["vm_id"], exclusion["vm_id_url"]),
59
+ ", ".join(exclusion["tags"]),
60
+ exclusion["service"],
61
+ format_date(exclusion["create_date"], "%d%m%Y", "%d/%m/%Y"),
62
+ (
63
+ format_date(exclusion["expired_date"], "%d%m%Y", "%d/%m/%Y")
64
+ if exclusion["expired_date"]
65
+ and exclusion["expired_date"] != "undefined"
66
+ else "NA"
67
+ ),
68
+ exclusion["reason"],
69
+ ]
70
+ table.add_row(*row_data)
71
+ console = Console()
72
+ console.print(table)
73
+
74
+ def _check_spaces(self, value, url):
75
+ values = value.split()
76
+ urls = url.split()
77
+ new_value = ""
78
+ if len(values) > 1 or len(urls) > 1:
79
+ for value, url in zip(values, urls):
80
+ new_value += self._make_hyperlink(value, url) + " "
81
+ else:
82
+ new_value = self._make_hyperlink(values[0], urls[0])
83
+ return new_value
84
+
85
+ def _make_hyperlink(self, value, url):
86
+ return f"[link={url}]{value}[/link]"
@@ -130,14 +130,14 @@ class BreakBuild:
130
130
  print(
131
131
  self.devops_platform_gateway.message(
132
132
  "succeeded",
133
- f"Remediation Rate {remediation_rate_value}% is greater than {risk_threshold}%",
133
+ f"Remediation rate {remediation_rate_value}% is greater than {risk_threshold}%",
134
134
  )
135
135
  )
136
136
  elif remediation_rate_value >= risk_threshold:
137
137
  print(
138
138
  self.devops_platform_gateway.message(
139
139
  "warning",
140
- f"Remediation Rate {remediation_rate_value}% is close to {risk_threshold}%",
140
+ f"Remediation rate {remediation_rate_value}% is close to {risk_threshold}%",
141
141
  )
142
142
  )
143
143
  self.warning_build = True
@@ -145,7 +145,7 @@ class BreakBuild:
145
145
  print(
146
146
  self.devops_platform_gateway.message(
147
147
  "error",
148
- f"Remediation Rate {remediation_rate_value}% is less than {risk_threshold}%",
148
+ f"Remediation rate {remediation_rate_value}% is less than {risk_threshold}%",
149
149
  )
150
150
  )
151
151
  self.break_build = True
@@ -162,6 +162,10 @@ class BreakBuild:
162
162
  "create_date": exclusion.create_date,
163
163
  "expired_date": exclusion.expired_date,
164
164
  "reason": exclusion.reason,
165
+ "vm_id": exclusion.vm_id,
166
+ "vm_id_url": exclusion.vm_id_url,
167
+ "service": exclusion.service,
168
+ "tags": exclusion.tags,
165
169
  }
166
170
  for exclusion in exclusions
167
171
  ]
@@ -179,9 +183,15 @@ class BreakBuild:
179
183
  and report.vuln_id_from_tool == exclusion.id
180
184
  )
181
185
  or (report.id and report.id == exclusion.id)
186
+ or (report.vm_id and exclusion.id in report.vm_id)
182
187
  ) and ((exclusion.where in report.where) or (exclusion.where == "all")):
183
188
  exclude = True
184
- applied_exclusions.append(exclusion)
189
+ exclusion_copy = copy.deepcopy(exclusion)
190
+ exclusion_copy.vm_id = report.vm_id
191
+ exclusion_copy.vm_id_url = report.vm_id_url
192
+ exclusion_copy.service = report.service
193
+ exclusion_copy.tags = report.tags
194
+ applied_exclusions.append(exclusion_copy)
185
195
  break
186
196
  if not exclude:
187
197
  report.reason = "Remediation Rate"
@@ -214,7 +224,7 @@ class BreakBuild:
214
224
  print(
215
225
  self.devops_platform_gateway.message(
216
226
  "error",
217
- f"Report {report.vuln_id_from_tool if report.vuln_id_from_tool else report.id} with tag {tag} is blacklisted and age {report.age} is above threshold {tag_age_threshold}",
227
+ f"Report {report.vm_id} with tag {tag} is blacklisted and age {report.age} is above threshold {tag_age_threshold}",
218
228
  )
219
229
  )
220
230
 
@@ -222,7 +232,7 @@ class BreakBuild:
222
232
  print(
223
233
  self.devops_platform_gateway.message(
224
234
  "warning",
225
- f"Report {report.vuln_id_from_tool if report.vuln_id_from_tool else report.id} with tag {tag} is blacklisted but age {report.age} is below threshold {tag_age_threshold}",
235
+ f"Report {report.vm_id} with tag {tag} is blacklisted but age {report.age} is below threshold {tag_age_threshold}",
226
236
  )
227
237
  )
228
238
 
@@ -258,9 +268,7 @@ class BreakBuild:
258
268
  break_build = True
259
269
  report.reason = "Risk Score"
260
270
  self.report_breaker.append(copy.deepcopy(report))
261
- print(
262
- "Below are open vulnerabilities from Vulnerability Management Platform"
263
- )
271
+ print("Below are open findings from Vulnerability Management Platform")
264
272
  self.printer_table_gateway.print_table_report(
265
273
  report_list,
266
274
  )
@@ -284,7 +292,8 @@ class BreakBuild:
284
292
  else:
285
293
  print(
286
294
  self.devops_platform_gateway.message(
287
- "succeeded", "There are no vulnerabilities"
295
+ "succeeded",
296
+ "There are no open findings from Vulnerability Management Platform",
288
297
  )
289
298
  )
290
299
 
@@ -295,7 +304,7 @@ class BreakBuild:
295
304
  "warning", "Bellow are all findings that were excepted"
296
305
  )
297
306
  )
298
- self.printer_table_gateway.print_table_exclusions(applied_exclusions)
307
+ self.printer_table_gateway.print_table_report_exlusions(applied_exclusions)
299
308
  for reason, total in Counter(
300
309
  map(lambda x: x["reason"], applied_exclusions)
301
310
  ).items():