Improve filter behavior in container registry
Problem to solve
1. Root image is not filterable
Since this name is appended in the frontend this is not searchable in the API call, thus misleading the users:
2. Only part of the path works with the filter
The filter mechanism only works on the image repo name.
3. Displaying the entire path on the UI is not very legible
We've heard in customer research that it can be difficult to find the image repository you're searching for as there is so much text on the screen
Solution
How the path displays in UI
This proposal was informed by the following survey
- Stop appending
Root image
in the frontend. - Keep the sub repositories in the path
sub1/sub2/sub3
- Hide the
company/group/sub-group
from the path in the UI by default, with an option to expand it:
Currently shown in UI | Proposal |
---|---|
company/group/project/ Root image |
project |
company/group/project/image |
project/image |
company/group/project/sub1/sub2/sub3 |
project/sub1/sub2/sub3 |
Copy button
The copy button should still copy the entire path
What's shown in the UI | What the copy button copies |
---|---|
project/image |
registry.gitlab.com/company/group/project/image |
Filtering
- Filter by the entire path. Imagining the path is the UI is
project/image
Before | After |
---|---|
Only image is filterable |
entire path is filterable, including / (e.g. project/ima ) |
Implementation
Tracking button clicks
We should track how often the ellipsis button is clicked each time the user is on the page. If the user clicks on every row to expand the full path, we know that we're inconveniencing the user.
Phased rollout
We could considering rolling out the truncation with the ellipsis button to a small subset of users, tracking how often users are clicking the ellipsis button and then making a determination to roll out further.