Skip to content

Add Google PSE exported configuration and docs

Sarah German requested to merge gps-search-config into main

What does this MR do and why?

  • Adds Google Programmable Search Engine configuration to the gitlab-docs codebase.
  • Adds a new CODEOWNERS entry for these files.
  • Adds documentation to define a config change process.
  • Adds documentation about modifying synonyms.xml (the most likely config change a TW might want to do).

Why

  • Having exported configuration would allow us to more easily recreate the Programmable Search engine if needed.
  • Tracking config changes in code gives us a historical record of modifications.

Caveats

  • There is not a way to automate config deployment (or retrieval); it has to be done from the Google PSE dashboard, which is only accessible to team members who have been added by another admin (currently that's myself, Susan, axil, and a person from the GitLab SRE team who originally spun up the service).
  • Since uploading new config is manual, it's possible for configuration between Google and these exported files to fall out of sync if we merge a change but neglect to upload the new file to Google (or make a change on Google without updating the exported XML).

I do not expect configuration to change very often, so I think the trade-offs are OK here, and it's still worth tracking these files in Git. Open for discussion though! 😄

Closes #1590 (closed)

Merge request acceptance checklist

This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Sarah German

Merge request reports