Skip to content

Remove Threat Monitoring page

Why are we doing this work

Container Network Security and Container Host Security have been deprecated and will be removed in %15.0. As part of this removal, will be removing the entire Threat Monitoring page at Security & Compliance > Threat Monitoring, as well as any associated backend code. The alerts tab may be re-implemented again in the future, so its removal should be contained in an individual commit that can be reverted.

Relevant links

Non-functional requirements

  • Documentation:
  • Feature flag:
  • Performance:
  • Testing:

Implementation plan

  1. frontend Remove the statistics tab from the threat monitoring page

    • delete ee/app/assets/javascripts/threat_monitoring/components/statistics_history.vue
    • delete ee/app/assets/javascripts/threat_monitoring/components/statistics_summary.vue
    • delete ee/app/assets/javascripts/threat_monitoring/components/threat_monitoring_section.vue
    • delete ee/app/assets/javascripts/threat_monitoring/components/threat_monitoring_filters.vue
    • delete ee/app/assets/javascripts/threat_monitoring/components/no_environment_empty_state.vue
    • delete references to threat_monitoring_section, threat_monitoring_filters, and no_environment_empty_state from ee/app/assets/javascripts/threat_monitoring/components/app.vue
    • delete statistics-related constants from ee/app/assets/javascripts/threat_monitoring/components/constants.js
    • delete statistics-related Vuex store in ee/app/assets/javascripts/threat_monitoring/store
    • delete statistic-related strings from locale/gitlab.pot
    • delete statistics-related constants in ee/app/assets/javascripts/threat_monitoring/**/constants.js
    • delete statistics-related mock data in ee/spec/frontend/threat_monitoring/mocks
    • delete statistics-related snapshots in ee/spec/frontend/threat_monitoring/components/__snapshots__
  2. frontend in the code-base rename ee/app/assets/javascripts/threat_monitoring => ee/app/assets/javascripts/security_orchestration

    • rename ee/app/assets/javascripts/threat_monitoring => ee/app/assets/javascripts/security_orchestration
    • update threat_monitoring => security_orchestration in ee/app/assets/javascripts/pages/projects/threat_monitoring
  3. frontend Remove cilium alert functionality (NOTE: Threat Monitoring -> Alerts tab frontend code may be re-used in the future, so we should try to make the commit deleting this revert-able. Thus, it should be done as the last frontend MR for this epic)

    • update end-to-end tests to remove testing of Alerts tab (NOTE: these alerts are network policy specific, so remove them in a separate MR
    • delete the folder ee/app/assets/javascripts/threat_monitoring/components/alerts
    • delete css, ee/app/assets/stylesheets/pages/threat_management.scss
    • delete ee/app/assets/javascripts/threat_monitoring/components/app.vue
    • delete the environment picker
    • delete ee/app/assets/javascripts/threat_monitoring/index.js
    • delete the folder ee/app/assets/javascripts/pages/projects/threat_monitoring
    • delete ee/app/views/projects/threat_monitoring/alert_details.html.haml /threat_monitoring_helper_spec.rb`
    • delete alert-related strings from locale/gitlab.pot
    • delete alert-related constants in ee/app/assets/javascripts/threat_monitoring/**/constants.js
    • delete alert-related mock data in ee/spec/frontend/threat_monitoring/mocks
    • delete alert-related snapshots in ee/spec/frontend/threat_monitoring/components/__snapshots__
  • backend

    • Remove threat_monitoring route from ee/config/routes/project.rb
    • Remove Threat Monitoring from the project sidebar (ee/lib/ee/sidebars/projects/menus/security_compliance_menu.rb)
    • Delete ee/app/controllers/projects/threat_monitoring_controller.rb
    • Delete ee/app/helpers/projects/threat_monitoring_helper.rb
    • Alerts
      • Remove threat_monitoring domain from app/models/alert_management/alert.rb
      • Write a migration to delete threat_monitoring alerts from the DB (DELETE FROM alerts WHERE domain = 1)
      • Remove with_threat_monitoring_alerts scope from app/models/alert_management/alert.rb
      • Remove threat_monitoring value from app/graphql/types/alert_management/domain_filter_enum.rb
      • Delete ee/app/finders/ee/alert_management/alerts_finder.rb
      • Delete ee/app/presenters/ee/alert_management/alert_presenter.rb
    • Delete threat monitoring policies from ee/app/policies/ee/project_policy.rb
    • Remove threat_monitoring licensed feature from ee/app/models/license.rb
  • Tooling

    • Delete threat_monitoring code paths from .gitlab/CODEOWNERS
Edited by Alexander Turinske