Jump to content

Sourcebot

From Wikitech

upstream

start it

  • For a demo setup we are using podman here and pull the image straight from upstream github registry.
  • You need to create a gitlab token. Replace <redacted> with the literal string.
  • The SOURCEBOT_TELEMETRY_DISABLED parameter changed from version 2 to 3. Now needs boolean true/false instead of 0/1.
  • CONNECTION_MANAGER_UPSERT_TIMEOUT_MS is needed to avoid timing out on database transactions since sourcebot moved to postgresql in version 3. It's in milliseconds. Just set it to something really high.
  • As of today 3.0.x is the latest. Version is directly supplied at the end of the command. Avoid using "latest".
podman run -p 3000:3000 -e GITLAB_TOKEN=<redacted> -5 -e SOURCEBOT_TELEMETRY_DISABLED=true -e CONNECTION_MANAGER_UPSERT_TIMEOUT_MS=300000 --rm --name sourcebot -v /srv/sourcebot_data:/data -e CONFIG_PATH=/data/config.json ghcr.io/sourcebot-dev/sourcebot:v3.0.1


simple config for Gerrit only, new v3 schema

Since sourcebot v3 there is a new schema for the JSON config. It's now using "connections" objects.

Here is a simple one that gets all the repos from Gerrit.

Yea, those wildcards are just "per level". * matches all projects foo, */* all projects foo/bar and so on.

{
    "$schema": "./schemas/v3/index.json",
    "connections": {
        "sourcebot-gerrit-connection": {
            "type": "gerrit",
            "url": "https://gerrit.wikimedia.org/r/",
            "projects": [
                "*",
                "*/*",
                "*/*/*",
                "*/*/*/*"
            ]
        }
    }
}