Show list of stream audit event types in UI

Lorenz van Herwaarden requested to merge render-audit-events-backend into master

What does this MR do and why?

Relates to #413581 (closed)

This MR displays available audit event types coming from backend (HAML injected) in a GlCollapsibleListbox in the event filtering section of a streaming destination.

Before, each event type had to be created via the API and could only be unchecked via the UI later.

Some notes:

  • The list of events is quite long, in next iterations, the listbox will handle grouping by category and searching.
  • The event types don't have any label supplied, so it was decided that we would use sentence case; "add_gpg_key" becomes "Add gpg key"

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After
before after


How to set up and validate locally

Make sure you have an EE license

  1. Go to any group
  2. Go to "Secure" > "Audit events"
  3. Click "Streams" tab
  4. Create a new streaming destination by clicking "Add streaming destination"
  5. Provide a "Destination URL"
  6. Validate you see the "Filter by stream event" accordion and click it
  7. Validate you see a dropdown with a placeholder "Select events", click it
  8. Validate you can see a long list of event types and these are selectable
  9. Validate that if you select some it updates the text of the dropdown button with a comma-separated list of the event type names
  10. Validate that clicking "Unselect all", actually unselects all event types
  11. Validate that clicking "Select all" selects all event types (button is only shown if no event types are selected)
  12. Select some event types and click "Add"
  13. Validate that the editor is closed and a new streaming destination is added
  14. Validate that if you edit that new destination and go to event type dropdown the same events are selected from before.

MR acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Lorenz van Herwaarden

Merge request reports