diff --git a/apps/workers/src/env.ts b/apps/workers/src/env.ts index ba2464b9..3bfcfb45 100644 --- a/apps/workers/src/env.ts +++ b/apps/workers/src/env.ts @@ -33,6 +33,8 @@ const envSchema = z.object({ NX_CDN_PRIVATE_BUCKET: z.string().default('REPLACE_THIS'), NX_CDN_PUBLIC_BUCKET: z.string().default('REPLACE_THIS'), + + STRIPE_API_KEY: z.string().optional(), }) const env = envSchema.parse(process.env) diff --git a/apps/workers/src/main.ts b/apps/workers/src/main.ts index f6795dc6..70cdffd6 100644 --- a/apps/workers/src/main.ts +++ b/apps/workers/src/main.ts @@ -154,11 +154,13 @@ syncInstitutionQueue.add( */ sendEmailQueue.process('send-email', async (job) => await emailProcessor.send(job.data)) -sendEmailQueue.add( - 'send-email', - { type: 'trial-reminders' }, - { repeat: { cron: '0 */12 * * *' } } // Run every 12 hours -) +if (env.STRIPE_API_KEY) { + sendEmailQueue.add( + 'send-email', + { type: 'trial-reminders' }, + { repeat: { cron: '0 */12 * * *' } } // Run every 12 hours + ) +} // Fallback - usually triggered by errors not handled (or thrown) within the Bull event handlers (see above) process.on(