chore: Refactor worker, emails and data cleanup to task system (#3337)

* Refactor worker, all emails on task system

* fix

* lint

* fix: Remove a bunch of expect-error comments in related tests

* refactor: Move work from utils.gc into tasks

* test

* Add tracing to tasks and processors
fix: DebounceProcessor triggering on all events
Event.add -> Event.schedule
This commit is contained in:
Tom Moor
2022-04-06 16:48:28 -07:00
committed by GitHub
parent 9c766362ed
commit dbfdcd6d23
41 changed files with 729 additions and 444 deletions

View File

@@ -2,8 +2,8 @@ import invariant from "invariant";
import { uniqBy } from "lodash";
import { Role } from "@shared/types";
import Logger from "@server/logging/logger";
import mailer from "@server/mailer";
import { User, Event, Team } from "@server/models";
import EmailTask from "@server/queues/tasks/EmailTask";
type Invite = {
name: string;
@@ -74,13 +74,17 @@ export default async function userInviter({
},
ip,
});
await mailer.sendTemplate("invite", {
to: invite.email,
name: invite.name,
actorName: user.name,
actorEmail: user.email,
teamName: team.name,
teamUrl: team.url,
await EmailTask.schedule({
type: "invite",
options: {
to: invite.email,
name: invite.name,
actorName: user.name,
actorEmail: user.email,
teamName: team.name,
teamUrl: team.url,
},
});
if (process.env.NODE_ENV === "development") {