Feature: Add global file search
Problem to solve
We've just upgraded to Gitlab Starter, and have enabled Global Searching. This is great, but I was surprised to find that I couldn't locate files specifically. Searching globally for a text seems to also find files in the "Code" tab, but I think this is "inefficient" if we're looking for files (and not content).
I or others might want to:
- Locate all repositories with a specific filename, in order to perform a common fix (ideally I want to open each file in a new tab and go from there).
- Locate all repositories missing a specific file (LICENSE.txt, CI, code style configurations, ..)
Intended users
- Developers (find "win32helper")
- Managers, QA (ensure code style configuration files, common layouts, ..)
Further details
N/A
Proposal
- Add a tab in the global search, named "files"
- The files tab will list only file names (no content)
- The files tab will search only the
blob
type andblob.file_name
field in Elastic Search - Searches should be somewhat flexible, like the
fuzzy file finder
in repositories- "win helper" should find
/myfiles/win32helper.cs
- "win helper" should find
Notes:
- This feature can be enabled only for those with global search enabled, to use Elastic Search for it.
Permissions and Security
Regular permissions for Global search should apply.
Documentation
N/A
Testing
There should be few risks, as this is a new page / tab.
What does success look like, and how can we measure that?
Success & acceptance: A user can find any file by name or partial name in any group or project indexed by Elastic Search.