zed/crates/collab
Thorsten Ball c015b5c4cd
Enable inline-git-blame by default (#10632)
Release Notes:

- N/A
2024-04-16 18:53:57 +02:00
..
k8s
migrations Semantic Index (#10329) 2024-04-12 11:40:59 -06:00
migrations.sqlite WIP: remoting (#10085) 2024-04-11 15:36:35 -06:00
src Enable inline-git-blame by default (#10632) 2024-04-16 18:53:57 +02:00
.env.toml WIP: remoting (#10085) 2024-04-11 15:36:35 -06:00
admin_api.conf
Cargo.toml Revert change to tracing (#10578) 2024-04-15 14:00:56 -06:00
LICENSE-AGPL
README.md
seed.default.json

Zed Server

This crate is what we run at https://collab.zed.dev.

It contains our back-end logic for collaboration, to which we connect from the Zed client via a websocket after authenticating via https://zed.dev, which is a separate repo running on Vercel.

Local Development

Detailed instructions on getting started are here.

Deployment

We run two instances of collab:

Both of these run on the Kubernetes cluster hosted in Digital Ocean.

Deployment is triggered by pushing to the collab-staging (or collab-production) tag in Github. The best way to do this is:

  • ./script/deploy-collab staging
  • ./script/deploy-collab production

You can tell what is currently deployed with ./script/what-is-deployed.

Database Migrations

To create a new migration:

./script/create-migration <name>

Migrations are run automatically on service start, so run foreman start again. The service will crash if the migrations fail.

When you create a new migration, you also need to update the SQLite schema that is used for testing.