* chore: Implement short-lived redis cache for slots * chore: adapt apiv2 redis service to match with upstash redis * chore: safer redis service and ms ttl * fixup! chore: safer redis service and ms ttl * Wrap with timeout, currently doesn't work yet * Updated @upstash/redis for better signal support * Fix type errors, remove ts value * Inject NoopRedisService for NODE_ENV test * chore: bump platform libs * chore: bump platform libs * Upstash Redis upgrade no longer resulted in expected hard crash on init, so updated factory and our Upstash Redis Adapter to mimick old behaviour * Add SLOTS_CACHE_TTL variable for configurable ttl on slots cache * Update parseInt to use right types * chore: bump platform libs * chore: bump platform libs * chore: bump platform libs * update e2e api v2 action * set SLOTS_CACHE_TTL env var api v2 e2e --------- Co-authored-by: cal.com <morgan@cal.com>
18 lines
497 B
TypeScript
18 lines
497 B
TypeScript
import { createModule } from "@evyweb/ioctopus";
|
|
|
|
import { DI_TOKENS } from "@calcom/lib/di/tokens";
|
|
|
|
import { NoopRedisService } from "../NoopRedisService";
|
|
import { RedisService } from "../RedisService";
|
|
|
|
const redisModule = createModule();
|
|
|
|
redisModule.bind(DI_TOKENS.REDIS_CLIENT).toFactory(() => {
|
|
if (process.env.UPSTASH_REDIS_REST_URL && process.env.UPSTASH_REDIS_REST_TOKEN) {
|
|
return new RedisService();
|
|
}
|
|
return new NoopRedisService();
|
|
}, "singleton");
|
|
|
|
export { redisModule };
|