sourcegraph/schema
Erik Seliger 83d0f6876c
dotcom: Remove on-demand cloning of repositories (#63321)
Historically, sourcegraph.com has been the only instance. It was
connected to GitHub.com and GitLab.com only.
Configuration should be as simple as possible, and we wanted everyone to
try it on any repo. So public repos were added on-demand when browsed
from these code hosts.

Since, dotcom is no longer the only instance, and this is a special case
that only exists for sourcegraph.com.
This causes a bunch of additional complexity and various extra code
paths that we don't test well enough today.

We want to make dotcom simpler to understand, so we've made the decision
to disable that feature, and instead we will maintain a list of
repositories that we have on the instance.
We already disallowed several repos half a year ago, by restricting size
of repos with few stars heavily.
This is basically just a continuation of that.

In the diff, you'll mostly find deletions. This PR does not do much
other than removing the code paths that were only enabled in dotcom mode
in the repo syncer, and then removes code that became unused as a result
of that.

## Test plan

Ran a dotcom mode instance locally, it did not behave differently than a
regular instance wrt. repo cloning.
We will need to verify during the rollout that we're not suddenly
hitting code paths that don't scale to the dotcom size.

## Changelog

Dotcom no longer clones repos on demand.
2024-06-26 14:53:14 -07:00
..
aws_codecommit.schema.json
azuredevops.schema.json Docs: update links to point to new site (#60381) 2024-02-13 00:23:47 +00:00
batch_spec.schema.json batches: add fork attribute to changeset template (#51572) 2023-05-31 13:19:07 -04:00
bitbucket_cloud.schema.json Add support for naming repo explicitly for Bitbucket Cloud (#61536) 2024-04-08 19:03:53 +02:00
bitbucket_server_util.go
bitbucket_server.schema.json fix(Source): Fix documentation URLs for code hosts help pages (#63274) 2024-06-17 14:32:46 -04:00
bitbucketcloud_util.go Add Bitbucket Cloud as an auth provider with Perms syncing (#46309) 2023-01-16 14:20:35 +02:00
BUILD.bazel bazel: transcribe test ownership to bazel tags (#62664) 2024-05-16 15:51:16 +01:00
changeset_spec.schema.json code-search: handle changeset fork when creating a batch change via src-cli (#58156) 2023-11-08 09:55:05 +01:00
extension_schema.go remove extension registry UI and related GraphQL API (#45891) 2022-12-22 00:10:56 -08:00
gerrit.schema.json gerrit: Add support for SSH cloning (#61537) 2024-04-04 15:56:51 +02:00
github_util.go
github.schema.json dotcom: Remove on-demand cloning of repositories (#63321) 2024-06-26 14:53:14 -07:00
gitlab_util.go
gitlab.schema.json dotcom: Remove on-demand cloning of repositories (#63321) 2024-06-26 14:53:14 -07:00
gitolite.schema.json Unremoving phabricator integration fields, adding lines to changelog (#32573) 2022-03-15 10:01:39 -04:00
go-modules.schema.json extsvc: Change default rate limits of npm and Go external services (#34042) 2022-04-19 11:50:46 +00:00
json-schema-draft-07.schema.json
jvm-packages.schema.json packages: improve and expand docs (#49774) 2023-03-21 17:47:57 +00:00
npm-packages.schema.json npm: Bump rate limit. (#37018) 2022-06-10 15:00:51 +00:00
onboardingtour.schema.json user onboarding: Use server side configuration and improve admin experience (#56768) 2023-09-19 22:10:45 +02:00
opencodegraph-protocol.schema.json OpenCodeGraph prototype (#58675) 2023-12-06 21:39:33 -08:00
opencodegraph.schema.json OpenCodeGraph prototype (#58675) 2023-12-06 21:39:33 -08:00
other_external_service.schema.json Remove App from codebase (#59115) 2023-12-21 01:07:05 +01:00
package.json web: sync TS project refenreces (#46407) 2023-01-16 18:55:10 -08:00
pagure.schema.json repos: add Pagure code host support (#28084) 2021-11-23 18:03:35 +01:00
perforce.schema.json Remove unused rateLimit on perforce connections (#58188) 2023-11-15 03:27:14 +01:00
phabricator.schema.json
python-packages.schema.json repos: Introduce Python dependency repos integration (#34886) 2022-05-05 13:24:25 +02:00
README.md site-config: Make symbols not required in syntaxHighlighting (#57276) 2023-10-16 19:53:19 -04:00
ruby-packages.schema.json Packages: add RubyGems support (#42817) 2022-10-17 09:48:18 +02:00
rust-packages.schema.json Remove experimental indexRepositoryName for rust packages (#59176) 2024-01-08 17:42:36 +01:00
schema.go dotcom: Remove on-demand cloning of repositories (#63321) 2024-06-26 14:53:14 -07:00
settings.schema.json [React]: Add initial usage of the new web worker-based cody web chat (#62792) 2024-06-26 12:13:29 -03:00
site.schema.json chore(plg): add useEmbeddedUI site config param (#63442) 2024-06-24 07:49:58 -07:00
stringdata.go Remove App from codebase (#59115) 2023-12-21 01:07:05 +01:00
tsconfig.json web: fix pnpm-lock issue (#47478) 2023-02-09 22:04:31 -08:00
validation_test.go schema: remove non-determinism from TestSchemaValidationUUID (#61728) 2024-04-09 15:50:30 +00:00

Sourcegraph JSON Schemas

JSON Schema is a way to define the structure of a JSON document. It enables typechecking and code intelligence on JSON documents.

Sourcegraph uses the following JSON Schemas:

Modifying a schema

  1. Edit the *.schema.json file in this directory.
  2. Run bazel run //schema:write_generated_schema.
  3. Commit the changes to both files.
  4. Run sg start to automatically update TypeScript schema files.

Known issues

  • The JSON Schema IDs (URIs) are of the form https://sourcegraph.com/v1/*.schema.json#, but these are not actually valid URLs. This means you generally need to supply them to JSON Schema validation libraries manually instead of having the validator fetch the schema from the web.