Generate chain of custody CSV reports asyncronously
What does this MR do and why?
We would like to expand the chain of custody report from only including merge commits, to including all commits (see issue 267601 for details)
To prepare for that expansion, this change moves the generation of the existing report to an asyncronous background job, which will email the requesting user after the job finishes generating the report.
closes issue 342594
Screenshots or screen recordings
UI Flow |
---|
Peek_2022-08-05_07-44 |
How to set up and validate locally
- enable the feature flag
echo "Feature.enable(:async_chain_of_custody_report)" | bundle exec rails c
- go to a group page
- go to "Security & Compliance" and then "Compliance report" on left side menu
- Click the "List of all merge commits" button
- check
http://localhost:3000/rails/letter_opener/
to see the email
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.