Skip to content

DAST On-demand scans MVC - Initiate Scan - Create page - Frontend

Summary

This issue is for creating the Asynchronous Scans page as described in #218465 (closed)

In this iteration, we'll focus on creating a basic page at Security & Compliance > Asynchronous Scans. The page will be hidden behind a feature flag and require the same permissions as the Security Dashboard. For the moment, the page will be presentational only, interactivity and documentation will be added in further steps.

Page overview

Resources

Implementation plan

  • Create the ee/app/controllers/projects/on_demand_scans_controller.rb controller
    • The controller should check that the user has sufficient permissions to access the page (Developer+)
    • The controller's access control also depend on the security_on_demand_scans_feature_flag feature flag to be enabled
  • Create the ee/app/views/projects/on_demand_scans/index.html.haml view
    • The view only contains the Vue app root element
    • The Vue app should receive the follow information via props:
      • The documentation link help_page_path('user/application_security/dast/index', anchor: 'on-demand-scans')
      • The empty state's illustration
  • Create the Vue app
    • The app only renders a GlEmptyState component
    • The empty state's secondary button points to the documentation link passed by the HAML
Edited by Paul Gascou-Vaillancourt