浏览代码

feat: add docker commands to start sending emails

Karol Sójko 3 年之前
父节点
当前提交
210a314c81
共有 3 个文件被更改,包括 13 次插入0 次删除
  1. 6 0
      packages/auth/bin/email.ts
  2. 6 0
      packages/auth/docker/entrypoint.sh
  3. 1 0
      packages/auth/package.json

+ 6 - 0
packages/auth/bin/email.ts

@@ -107,6 +107,12 @@ void container.load().then((container) => {
 
   logger.info(`Starting email campaign for email ${emailMessageIdentifier} ...`)
 
+  if (!emailMessageIdentifier) {
+    logger.error('No email message identifier passed as argument. Skipped sending.')
+
+    process.exit(1)
+  }
+
   const userRepository: UserRepositoryInterface = container.get(TYPES.UserRepository)
   const settingService: SettingServiceInterface = container.get(TYPES.SettingService)
   const userSubscriptionRepository: UserSubscriptionRepositoryInterface = container.get(

+ 6 - 0
packages/auth/docker/entrypoint.sh

@@ -44,6 +44,12 @@ case "$COMMAND" in
     yarn workspace @standardnotes/auth-server daily-backup:one_drive
     ;;
 
+  'email-campaign' )
+    echo "Starting Email Campaign Sending..."
+    MESSAGE_IDENTIFIER=$1 && shift 1
+    yarn workspace @standardnotes/auth-server email-campaign $MESSAGE_IDENTIFIER
+    ;;
+
    * )
     echo "Unknown command"
     ;;

+ 1 - 0
packages/auth/package.json

@@ -25,6 +25,7 @@
     "daily-backup:google_drive": "yarn node dist/bin/backup.js google_drive daily",
     "daily-backup:one_drive": "yarn node dist/bin/backup.js one_drive daily",
     "weekly-backup:email": "yarn node dist/bin/backup.js email weekly",
+    "email-campaign": "yarn node dist/bin/email.js",
     "typeorm": "typeorm-ts-node-commonjs"
   },
   "dependencies": {