From 46822ecbae0706e93cca5e4d3253098afdd9f87f Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Tue, 19 Nov 2019 12:53:21 -0600 Subject: [PATCH 1/2] fix(email): better promise handling --- migrations/users/bulk-email.js | 4 ++-- website/server/libs/email.js | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/migrations/users/bulk-email.js b/migrations/users/bulk-email.js index 88f67e095f..fb48ce5d58 100644 --- a/migrations/users/bulk-email.js +++ b/migrations/users/bulk-email.js @@ -16,11 +16,11 @@ async function updateUser (user) { if (count % progressCount === 0) console.warn(`${count} ${user._id}`); - sendTxn( + await sendTxn( user, EMAIL_SLUG, [{ name: 'BASE_URL', content: BASE_URL }], // Add variables from template - ); + ).catch(err => console.error(err)); return User.update({ _id: user._id }, { $set: { migration: MIGRATION_NAME } }).exec(); } diff --git a/website/server/libs/email.js b/website/server/libs/email.js index 634d60ad9d..da241c571b 100644 --- a/website/server/libs/email.js +++ b/website/server/libs/email.js @@ -66,7 +66,7 @@ export function getGroupUrl (group) { } // Send a transactional email using Mandrill through the external email server -export function sendTxn (mailingInfoArray, emailType, variables, personalVariables) { +export async function sendTxn (mailingInfoArray, emailType, variables, personalVariables) { mailingInfoArray = Array.isArray(mailingInfoArray) ? mailingInfoArray : [mailingInfoArray]; // eslint-disable-line no-param-reassign, max-len variables = [ // eslint-disable-line no-param-reassign, max-len @@ -130,7 +130,7 @@ export function sendTxn (mailingInfoArray, emailType, variables, personalVariabl } if (IS_PROD && mailingInfoArray.length > 0) { - got.post(`${EMAIL_SERVER.url}/job`, { + return got.post(`${EMAIL_SERVER.url}/job`, { auth: `${EMAIL_SERVER.auth.user}:${EMAIL_SERVER.auth.password}`, json: true, body: { From b4efe11e6a8c18f73004475e2eacc070abaea9d0 Mon Sep 17 00:00:00 2001 From: Sabe Jones Date: Tue, 19 Nov 2019 12:59:53 -0600 Subject: [PATCH 2/2] fix(async): remove catch, add return --- migrations/users/bulk-email.js | 2 +- website/server/libs/email.js | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/migrations/users/bulk-email.js b/migrations/users/bulk-email.js index fb48ce5d58..611a5ad463 100644 --- a/migrations/users/bulk-email.js +++ b/migrations/users/bulk-email.js @@ -20,7 +20,7 @@ async function updateUser (user) { user, EMAIL_SLUG, [{ name: 'BASE_URL', content: BASE_URL }], // Add variables from template - ).catch(err => console.error(err)); + ); return User.update({ _id: user._id }, { $set: { migration: MIGRATION_NAME } }).exec(); } diff --git a/website/server/libs/email.js b/website/server/libs/email.js index da241c571b..4620f980fe 100644 --- a/website/server/libs/email.js +++ b/website/server/libs/email.js @@ -149,4 +149,6 @@ export async function sendTxn (mailingInfoArray, emailType, variables, personalV }, }).catch(err => logger.error(err)); } + + return null; }