Improve Self host setup (#30)

* Add self host setup

* Improve blunders

* Move to bull mq

* More changes

* Add example code for sending test emails
This commit is contained in:
KM Koushik
2024-06-24 08:21:37 +10:00
committed by GitHub
parent 8a2769621c
commit f77a8829be
67 changed files with 1771 additions and 688 deletions

View File

@@ -1,9 +0,0 @@
import { env } from "~/env";
export const APP_SETTINGS = {
SNS_TOPIC_ARN: "SNS_TOPIC_ARN",
SES_CONFIGURATION_GENERAL: `SES_CONFIGURATION_GENERAL_${env.NODE_ENV}`,
SES_CONFIGURATION_CLICK_TRACKING: `SES_CONFIGURATION_CLICK_TRACKING_${env.NODE_ENV}`,
SES_CONFIGURATION_OPEN_TRACKING: `SES_CONFIGURATION_OPEN_TRACKING_${env.NODE_ENV}`,
SES_CONFIGURATION_FULL: `SES_CONFIGURATION_FULL_${env.NODE_ENV}`,
};

View File

@@ -1,18 +1,25 @@
import { APP_SETTINGS } from "./constants";
import { SesSettingsService } from "~/server/service/ses-settings-service";
export function getConfigurationSetName(
export async function getConfigurationSetName(
clickTracking: boolean,
openTracking: boolean
openTracking: boolean,
region: string
) {
const setting = await SesSettingsService.getSetting(region);
if (!setting) {
throw new Error(`No SES setting found for region: ${region}`);
}
if (clickTracking && openTracking) {
return APP_SETTINGS.SES_CONFIGURATION_FULL;
return setting.configFull;
}
if (clickTracking) {
return APP_SETTINGS.SES_CONFIGURATION_CLICK_TRACKING;
return setting.configClick;
}
if (openTracking) {
return APP_SETTINGS.SES_CONFIGURATION_OPEN_TRACKING;
return setting.configOpen;
}
return APP_SETTINGS.SES_CONFIGURATION_GENERAL;
return setting.configGeneral;
}