crates/collab/.env.toml 🔗
@@ -1,4 +1,5 @@
DATABASE_URL = "postgres://postgres@localhost/zed"
+DATABASE_MAX_CONNECTIONS = 5
HTTP_PORT = 8080
API_TOKEN = "secret"
INVITE_LINK_PREFIX = "http://localhost:3000/invites/"
Antonio Scandurra created
crates/collab/.env.toml | 1 +
crates/collab/k8s/environments/preview.sh | 1 +
crates/collab/k8s/environments/production.sh | 1 +
crates/collab/k8s/environments/staging.sh | 1 +
crates/collab/k8s/manifest.template.yml | 2 ++
crates/collab/src/lib.rs | 3 ++-
6 files changed, 8 insertions(+), 1 deletion(-)
@@ -1,4 +1,5 @@
DATABASE_URL = "postgres://postgres@localhost/zed"
+DATABASE_MAX_CONNECTIONS = 5
HTTP_PORT = 8080
API_TOKEN = "secret"
INVITE_LINK_PREFIX = "http://localhost:3000/invites/"
@@ -1,3 +1,4 @@
ZED_ENVIRONMENT=preview
RUST_LOG=info
INVITE_LINK_PREFIX=https://zed.dev/invites/
+DATABASE_MAX_CONNECTIONS=10
@@ -1,3 +1,4 @@
ZED_ENVIRONMENT=production
RUST_LOG=info
INVITE_LINK_PREFIX=https://zed.dev/invites/
+DATABASE_MAX_CONNECTIONS=85
@@ -1,3 +1,4 @@
ZED_ENVIRONMENT=staging
RUST_LOG=info
INVITE_LINK_PREFIX=https://staging.zed.dev/invites/
+DATABASE_MAX_CONNECTIONS=5
@@ -80,6 +80,8 @@ spec:
secretKeyRef:
name: database
key: url
+ - name: DATABASE_MAX_CONNECTIONS
+ value: ${DATABASE_MAX_CONNECTIONS}
- name: API_TOKEN
valueFrom:
secretKeyRef:
@@ -91,6 +91,7 @@ impl std::error::Error for Error {}
pub struct Config {
pub http_port: u16,
pub database_url: String,
+ pub database_max_connections: u32,
pub api_token: String,
pub invite_link_prefix: String,
pub live_kit_server: Option<String>,
@@ -116,7 +117,7 @@ pub struct AppState {
impl AppState {
pub async fn new(config: Config) -> Result<Arc<Self>> {
let mut db_options = db::ConnectOptions::new(config.database_url.clone());
- db_options.max_connections(5);
+ db_options.max_connections(config.database_max_connections);
let db = Database::new(db_options).await?;
let live_kit_client = if let Some(((server, key), secret)) = config
.live_kit_server