APPROVED: Proposal: Services (containers / image names) should be renamed to be consistent and legible to new admins
Created by: slimsag
@sourcegraph/core-services @sourcegraph/code-intel @sourcegraph/distribution to those interested, please review by April 20th, 2020.
@sourcegraph/code-intel @efritz you may wish to review earlier.
Today
Right now, we have these container / image names in all deployments:
- frontend
- gitserver
- github-proxy
- precise-code-intel-api-server
- precise-code-intel-bundle-manager
- precise-code-intel-worker
- query-runner
- replacer
- repo-updater
- searcher
- symbols
- syntect-server
- zoekt-indexserver (hidden under "indexed-search/" in Kubernetes, but nowhere else)
- zoekt-webserver (hidden under "indexed-search/" in Kubernetes, but nowhere else)
- pgsql
- redis-store
- redis-cache
- prometheus
- grafana
- jaeger
Problem 1: Consistency
I see many consistency problems here:
- When is "server" or "manager" used? Consider:
zoekt-indexserver
-precise-code-intel-bundle-manager
+precise-code-intel-bundle-server
- When is "server" NOT used? Everything we have is a "server", so why is it in some things but not others? Consider:
-frontend
+frontend-server
-symbols
+symbols-server
-gitserver
+git
- When are dashes used, or not used? Consider:
-gitserver
+git-server
zoekt-indexserver
+zoekt-index-server
-repo-updater
+repoupdater
Problem 2: Legibility
Our services don't describe what they actually do to new site admins who may be trying to debug the system or determine what part of it they should look at:
-
query-runner
: sounds very important, it must run search queries -
searcher
sounds extremely important, must be responsible for all of search -
zoekt-*
no clue, doesn't sound important. -
syntect-server
no clue, doesn't sound important. -
precise-code-intel-api-server
sounds like a silly API server, probably not the main thing doing work. -
symbols
: must be doing all of the symbol search and indexing of code.
Proposal
Use the following service naming guidelines, and rename all existing services (primarily the docker containers / image names) accordingly: https://gist.github.com/slimsag/da2744d200bc498b7a24b2d57bfd4744
This renaming could be done primarily in v3.16, but also on a case-by-case basis before then if desirable for other reasons.