Add Devfile for Advanced Search features
What does this merge request do and why?
This MR configures the GDK to enable Zoekt and ElasticSearch.
It also enables the workspace to automatically provision a subscription license, passing in via the environment variable GITLAB_ACTIVATION_CODE.
Last, but not least, it fixes #2757 (closed) as a byproduct of the refactoring.
Closes #2757 (closed) Closes #2670 (closed)
How to set up and validate locally
-
Spin up a workspace using the
./devfile/search.ymlDevfile using your subscription license.
-
Wait for the bootstrapping to finish! Screenshot_2025-06-30_at_11.22.58
-
Access the GDK
-
If you receive 502 errors, check #2771 (closed)'s reproduction steps for a solution or create a new workspace.
-
Go into the admin section and verify the license got activated
-
Follow the instructions the GDK HowTo to enable Zoekt and ElasticSearch, except steps referring to the GDK config, as this was already done for you.
-
Create a new project from any template
-
Check that all projects are index eventually (takes probably about 5 minutes) in
/admin/application_settings/search#js-indexing-status -
Search for users, projects or code snippets and validate that search works.
Impacted categories
The following categories relate to this merge request:
-
gdk-reliability - e.g. When a GDK action fails to complete. -
gdk-usability - e.g. Improvements or suggestions around how the GDK functions. -
gdk-performance - e.g. When a GDK action is slow or times out.
Merge request checklist
-
This MR references an issue describing the change. -
This change is backward compatible. If not, please include steps to communicate to our users. -
Tests added for new functionality. If not, please raise an issue to follow-up. -
Documentation added/updated, if needed. -
Announcement added, if change is notable. -
gdk doctortest added, if needed.
Closes #2670 (closed)


