Ability to filter and batch delete artifacts directly from UI
Problem to solve
It adds an artifacts overview page under CI/CD for each project where a user can query artifacts and if he has enough rights he can delete single artifacts or batch delete multiple. (like older than date, or without expiry date)
Intended users
Further details
because there is no way to manage artifacts now, if they have no expiry date set (like old artifacts), they need to be deleted by API which is not really user friendly.
Proposal
This proposal includes a bigger then one milestone scope. Highlighted in bold are items which are closest to the original merge request scope https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/18707 Screen_Shot_2018-07-05_at_09.07.51.
Update: https://gitlab.com/gitlab-org/gitlab-ce/issues/66613 fixes part of the currently defined scope
Search:
- Job name
Filter:
- Branch
- Deleted branches (yes/no, needs deleted branch icon, both for dropdown as well as to showcase which rows are from deleted branches)
- Created date
- Commit author
- Expired date
- Pipeline ID
- Size
- Tag
- Trigger author
- Trigger source
Sort:
- Branch
- Created date
- Commit author
- Expired date
- Pipeline ID
- Size
- Tag
- Trigger author
- Trigger source
Other functionality:
- Batch select, including delete all button
- Recent searches
- Total artifact size depending on filtering
Shown data per artifact row:
- Job ID
- Job Name
- Triggerer (also called trigger source, can include API, web, push, etc)
- Pipeline ID
- Pipeline ref
- Commit
- Commit author
- Commit title
- Size
- Created time stamp
- Expired time stamp
- Download artifact button
- Browse artifact button
- Delete artifact button
Functionality which is not shown in mockups:
- Total count of selection
- Pagination, including how this works with batch selecting all currently filtered items across potentially multiple pages (if any).