Skip to content

Commit e5bbd9d

Browse files
authored
Remove non-Typesense search backends, add default env vars (#6082)
* Remove non-Typesense search backends, add default env vars * shear * remove some default keys
1 parent 83dddfd commit e5bbd9d

9 files changed

Lines changed: 103 additions & 2733 deletions

File tree

Cargo.lock

Lines changed: 0 additions & 24 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,6 @@ dotenv-build = "0.1.1"
7777
dotenvy = "0.15.7"
7878
dunce = "1.0.5"
7979
either = "1.15.0"
80-
elasticsearch = "9.1.0-alpha.1"
8180
encoding_rs = "0.8.35"
8281
enumset = "1.1.10"
8382
eyre = "0.6.12"

apps/labrinth/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,6 @@ deadpool-redis.workspace = true
4545
derive_more = { workspace = true, features = ["deref", "deref_mut"] }
4646
dotenvy = { workspace = true }
4747
either = { workspace = true }
48-
elasticsearch = { workspace = true, features = ["experimental-apis"] }
4948
eyre = { workspace = true }
5049
futures = { workspace = true }
5150
futures-util = { workspace = true }

apps/labrinth/src/env.rs

Lines changed: 103 additions & 95 deletions
Original file line numberDiff line numberDiff line change
@@ -120,42 +120,50 @@ impl FromStr for StringCsv {
120120
}
121121

122122
vars! {
123-
SENTRY_ENVIRONMENT: String;
124-
SENTRY_TRACES_SAMPLE_RATE: f32;
125-
SITE_URL: String;
126-
CDN_URL: String;
127-
LABRINTH_ADMIN_KEY: String;
128-
LABRINTH_MEDAL_KEY: String;
129-
LABRINTH_EXTERNAL_NOTIFICATION_KEY: String;
130-
RATE_LIMIT_IGNORE_KEY: String;
131-
DATABASE_URL: String;
132-
REDIS_URL: String;
133-
BIND_ADDR: String;
134-
SELF_ADDR: String;
135-
136-
LOCAL_INDEX_INTERVAL: u64;
137-
VERSION_INDEX_INTERVAL: u64;
138-
139-
WHITELISTED_MODPACK_DOMAINS: Json<Vec<String>>;
140-
ALLOWED_CALLBACK_URLS: Json<Vec<String>>;
141-
ANALYTICS_ALLOWED_ORIGINS: Json<Vec<String>>;
123+
SENTRY_ENVIRONMENT: String = "development";
124+
SENTRY_TRACES_SAMPLE_RATE: f32 = 0.1f32;
125+
SITE_URL: String = "http://localhost:3000";
126+
CDN_URL: String = "file:///tmp/modrinth";
127+
LABRINTH_ADMIN_KEY: String = "";
128+
LABRINTH_MEDAL_KEY: String = "";
129+
LABRINTH_EXTERNAL_NOTIFICATION_KEY: String = "";
130+
RATE_LIMIT_IGNORE_KEY: String = "";
131+
DATABASE_URL: String = "postgresql://labrinth:labrinth@localhost/labrinth";
132+
REDIS_URL: String = "redis://localhost";
133+
BIND_ADDR: String = "";
134+
SELF_ADDR: String = "";
135+
136+
LOCAL_INDEX_INTERVAL: u64 = 3600u64;
137+
VERSION_INDEX_INTERVAL: u64 = 1800u64;
138+
139+
WHITELISTED_MODPACK_DOMAINS: Json<Vec<String>> = Json(vec![
140+
"cdn.modrinth.com".into(),
141+
"github.com".into(),
142+
"raw.githubusercontent.com".into(),
143+
]);
144+
ALLOWED_CALLBACK_URLS: Json<Vec<String>> = Json(vec![
145+
"localhost".into(),
146+
".modrinth.com".into(),
147+
"127.0.0.1".into(),
148+
"[::1]".into(),
149+
]);
150+
ANALYTICS_ALLOWED_ORIGINS: Json<Vec<String>> = Json(vec![
151+
"http://127.0.0.1:3000".into(),
152+
"http://localhost:3000".into(),
153+
"https://modrinth.com".into(),
154+
"https://www.modrinth.com".into(),
155+
"*".into(),
156+
]);
142157

143158
// search
144159
SEARCH_BACKEND: crate::search::SearchBackendKind = crate::search::SearchBackendKind::Typesense;
145-
MEILISEARCH_READ_ADDR: String;
146-
MEILISEARCH_WRITE_ADDRS: StringCsv;
147-
MEILISEARCH_KEY: String;
148-
ELASTICSEARCH_URL: String;
149-
ELASTICSEARCH_INDEX_PREFIX: String;
150-
ELASTICSEARCH_USERNAME: String = "";
151-
ELASTICSEARCH_PASSWORD: String = "";
152160
SEARCH_INDEX_CHUNK_SIZE: i64 = 5000i64;
153161
TYPESENSE_URL: String = "http://localhost:8108";
154162
TYPESENSE_API_KEY: String = "modrinth";
155163
TYPESENSE_INDEX_PREFIX: String = "labrinth";
156164

157165
// storage
158-
STORAGE_BACKEND: crate::file_hosting::FileHostKind;
166+
STORAGE_BACKEND: crate::file_hosting::FileHostKind = crate::file_hosting::FileHostKind::Local;
159167

160168
// s3
161169
S3_PUBLIC_BUCKET_NAME: String = "";
@@ -173,98 +181,98 @@ vars! {
173181
S3_PRIVATE_SECRET: String = "";
174182

175183
// local
176-
MOCK_FILE_PATH: String = "";
177-
178-
GITHUB_CLIENT_ID: String;
179-
GITHUB_CLIENT_SECRET: String;
180-
GITLAB_CLIENT_ID: String;
181-
GITLAB_CLIENT_SECRET: String;
182-
DISCORD_CLIENT_ID: String;
183-
DISCORD_CLIENT_SECRET: String;
184-
MICROSOFT_CLIENT_ID: String;
185-
MICROSOFT_CLIENT_SECRET: String;
186-
GOOGLE_CLIENT_ID: String;
187-
GOOGLE_CLIENT_SECRET: String;
188-
STEAM_API_KEY: String;
189-
190-
TREMENDOUS_API_URL: String;
191-
TREMENDOUS_API_KEY: String;
192-
TREMENDOUS_PRIVATE_KEY: String;
193-
194-
PAYPAL_API_URL: String;
195-
PAYPAL_WEBHOOK_ID: String;
196-
PAYPAL_CLIENT_ID: String;
197-
PAYPAL_CLIENT_SECRET: String;
198-
PAYPAL_NVP_USERNAME: String;
199-
PAYPAL_NVP_PASSWORD: String;
200-
PAYPAL_NVP_SIGNATURE: String;
184+
MOCK_FILE_PATH: String = "/tmp/modrinth";
185+
186+
GITHUB_CLIENT_ID: String = "none";
187+
GITHUB_CLIENT_SECRET: String = "none";
188+
GITLAB_CLIENT_ID: String = "none";
189+
GITLAB_CLIENT_SECRET: String = "none";
190+
DISCORD_CLIENT_ID: String = "none";
191+
DISCORD_CLIENT_SECRET: String = "none";
192+
MICROSOFT_CLIENT_ID: String = "none";
193+
MICROSOFT_CLIENT_SECRET: String = "none";
194+
GOOGLE_CLIENT_ID: String = "none";
195+
GOOGLE_CLIENT_SECRET: String = "none";
196+
STEAM_API_KEY: String = "none";
197+
198+
TREMENDOUS_API_URL: String = "https://testflight.tremendous.com/api/v2/";
199+
TREMENDOUS_API_KEY: String = "none";
200+
TREMENDOUS_PRIVATE_KEY: String = "none";
201+
202+
PAYPAL_API_URL: String = "https://api-m.sandbox.paypal.com/v1/";
203+
PAYPAL_WEBHOOK_ID: String = "none";
204+
PAYPAL_CLIENT_ID: String = "none";
205+
PAYPAL_CLIENT_SECRET: String = "none";
206+
PAYPAL_NVP_USERNAME: String = "none";
207+
PAYPAL_NVP_PASSWORD: String = "none";
208+
PAYPAL_NVP_SIGNATURE: String = "none";
201209

202210
PAYPAL_BALANCE_ALERT_THRESHOLD: u64 = 0u64;
203211
BREX_BALANCE_ALERT_THRESHOLD: u64 = 0u64;
204212
TREMENDOUS_BALANCE_ALERT_THRESHOLD: u64 = 0u64;
205213
MURAL_BALANCE_ALERT_THRESHOLD: u64 = 0u64;
206214

207-
HCAPTCHA_SECRET: String;
215+
HCAPTCHA_SECRET: String = "none";
208216

209-
SMTP_USERNAME: String;
210-
SMTP_PASSWORD: String;
211-
SMTP_HOST: String;
212-
SMTP_PORT: u16;
213-
SMTP_TLS: String;
214-
SMTP_FROM_NAME: String;
215-
SMTP_FROM_ADDRESS: String;
217+
SMTP_USERNAME: String = "";
218+
SMTP_PASSWORD: String = "";
219+
SMTP_HOST: String = "localhost";
220+
SMTP_PORT: u16 = 1025u16;
221+
SMTP_TLS: String = "none";
222+
SMTP_FROM_NAME: String = "Modrinth";
223+
SMTP_FROM_ADDRESS: String = "no-reply@mail.modrinth.com";
216224

217-
SITE_VERIFY_EMAIL_PATH: String;
218-
SITE_RESET_PASSWORD_PATH: String;
219-
SITE_BILLING_PATH: String;
225+
SITE_VERIFY_EMAIL_PATH: String = "auth/verify-email";
226+
SITE_RESET_PASSWORD_PATH: String = "auth/reset-password";
227+
SITE_BILLING_PATH: String = "none";
220228

221-
SENDY_URL: String;
222-
SENDY_LIST_ID: String;
223-
SENDY_API_KEY: String;
229+
SENDY_URL: String = "none";
230+
SENDY_LIST_ID: String = "none";
231+
SENDY_API_KEY: String = "none";
224232

225-
CLICKHOUSE_REPLICATED: bool;
226-
CLICKHOUSE_URL: String;
227-
CLICKHOUSE_USER: String;
228-
CLICKHOUSE_PASSWORD: String;
229-
CLICKHOUSE_DATABASE: String;
233+
CLICKHOUSE_REPLICATED: bool = false;
234+
CLICKHOUSE_URL: String = "http://localhost:8123";
235+
CLICKHOUSE_USER: String = "default";
236+
CLICKHOUSE_PASSWORD: String = "default";
237+
CLICKHOUSE_DATABASE: String = "staging_ariadne";
230238

231-
FLAME_ANVIL_URL: String;
239+
FLAME_ANVIL_URL: String = "none";
232240

233-
GOTENBERG_URL: String;
234-
GOTENBERG_CALLBACK_BASE: String;
235-
GOTENBERG_TIMEOUT: u64;
241+
GOTENBERG_URL: String = "http://localhost:13000";
242+
GOTENBERG_CALLBACK_BASE: String = "http://host.docker.internal:8000/_internal/gotenberg";
243+
GOTENBERG_TIMEOUT: u64 = 30000u64;
236244

237-
STRIPE_API_KEY: String;
238-
STRIPE_WEBHOOK_SECRET: String;
245+
STRIPE_API_KEY: String = "none";
246+
STRIPE_WEBHOOK_SECRET: String = "none";
239247

240-
ADITUDE_API_KEY: String;
248+
ADITUDE_API_KEY: String = "none";
241249

242-
PYRO_API_KEY: String;
250+
PYRO_API_KEY: String = "none";
243251

244-
BREX_API_URL: String;
245-
BREX_API_KEY: String;
252+
BREX_API_URL: String = "https://platform.brexapis.com/v2/";
253+
BREX_API_KEY: String = "none";
246254

247-
DELPHI_URL: String;
255+
DELPHI_URL: String = "";
248256

249-
AVALARA_1099_API_URL: String;
250-
AVALARA_1099_API_KEY: String;
251-
AVALARA_1099_API_TEAM_ID: String;
252-
AVALARA_1099_COMPANY_ID: String;
257+
AVALARA_1099_API_URL: String = "https://www.track1099.com/api";
258+
AVALARA_1099_API_KEY: String = "none";
259+
AVALARA_1099_API_TEAM_ID: String = "none";
260+
AVALARA_1099_COMPANY_ID: String = "207337084";
253261

254-
ANROK_API_URL: String;
255-
ANROK_API_KEY: String;
262+
ANROK_API_URL: String = "";
263+
ANROK_API_KEY: String = "";
256264

257-
PAYOUT_ALERT_SLACK_WEBHOOK: String;
265+
PAYOUT_ALERT_SLACK_WEBHOOK: String = "none";
258266
CLOUDFLARE_INTEGRATION: bool = false;
259267

260-
ARCHON_URL: String;
268+
ARCHON_URL: String = "";
261269

262-
MURALPAY_API_URL: String;
263-
MURALPAY_API_KEY: String;
264-
MURALPAY_TRANSFER_API_KEY: String;
270+
MURALPAY_API_URL: String = "https://api-staging.muralpay.com";
271+
MURALPAY_API_KEY: String = "none";
272+
MURALPAY_TRANSFER_API_KEY: String = "none";
265273
MURALPAY_SOURCE_ACCOUNT_ID: muralpay::AccountId = muralpay::AccountId(uuid::Uuid::nil());
266274

267-
DEFAULT_AFFILIATE_REVENUE_SPLIT: Decimal;
275+
DEFAULT_AFFILIATE_REVENUE_SPLIT: Decimal = Decimal::new(1, 1);
268276

269277
DATABASE_ACQUIRE_TIMEOUT_MS: u64 = 30000u64;
270278
DATABASE_MIN_CONNECTIONS: u32 = 0u32;
@@ -286,7 +294,7 @@ vars! {
286294
MODERATION_SLACK_WEBHOOK: String = "";
287295
DELPHI_SLACK_WEBHOOK: String = "";
288296

289-
TREMENDOUS_CAMPAIGN_ID: String = "";
297+
TREMENDOUS_CAMPAIGN_ID: String = "none";
290298

291299
// server pinging
292300
SERVER_PING_MAX_CONCURRENT: usize = 16usize;

0 commit comments

Comments
 (0)