Skip to content

Commit

Permalink
Merge pull request #956 from funmusicplace/various-fixes
Browse files Browse the repository at this point in the history
Various fixes
  • Loading branch information
simonv3 authored Jan 4, 2025
2 parents 9094f97 + c203c72 commit b240211
Show file tree
Hide file tree
Showing 9 changed files with 64 additions and 17 deletions.
2 changes: 1 addition & 1 deletion client/src/components/ManageArtist/ManageArtist.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ const ManageArtist: React.FC<{}> = () => {
</NavLink>
</li>
)}
{artist && user?.isAdmin && (
{artist && (
<li>
<NavLink to="merch">{t("merch")}</NavLink>
</li>
Expand Down
4 changes: 2 additions & 2 deletions client/src/components/Merch/MerchView.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import PublicTrackGroupListing from "components/common/TrackTable/PublicTrackGro

import MerchButtonPopUp from "./MerchButtonPopUp";

function TrackGroup() {
function MerchView() {
const { t } = useTranslation("translation", {
keyPrefix: "merchDetails",
});
Expand Down Expand Up @@ -208,4 +208,4 @@ function TrackGroup() {
);
}

export default TrackGroup;
export default MerchView;
15 changes: 15 additions & 0 deletions emails/error-email/html.pug
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
doctype html
html
head
block head
meta(charset="utf-8")
meta(name="viewport", content="width=device-width")
meta(http-equiv="X-UA-Compatible", content="IE=edge")
meta(name="x-apple-disable-message-reformatting")
link(rel="stylesheet", href="style.css", data-inline)
body.sans-serif
.pa4
| There was an error in the application:
| #{error}
| Happened at #{time}

1 change: 1 addition & 0 deletions emails/error-email/subject.pug
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
= `Error in application`
3 changes: 3 additions & 0 deletions emails/error-email/text.pug
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
| Error
| #{error}
| time: #{time}
17 changes: 14 additions & 3 deletions src/jobs/generate-album.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import {
createBucketIfNotExists,
finalAudioBucket,
finalCoversBucket,
getBufferFromStorage,
minioClient,
trackGroupFormatBucket,
} from "../utils/minio";
Expand All @@ -22,6 +23,7 @@ import {
} from "@mirlo/prisma/client";
import filenamify from "filenamify";
import prisma from "@mirlo/prisma";
import cover from "../routers/v1/manage/trackGroups/{trackGroupId}/cover";

const {
MINIO_HOST = "",
Expand Down Expand Up @@ -104,11 +106,20 @@ export default async (job: Job) => {

if (trackGroup.cover?.id) {
logger.info("Adding cover");
await minioClient.fGetObject(
// await minioClient.fGetObject(
// finalCoversBucket,
// `${trackGroup.cover.id}-x1500.jpg`,
// coverDestination
// );

const { buffer } = await getBufferFromStorage(
minioClient,
finalCoversBucket,
`${trackGroup.cover.id}-x1500.jpg`,
coverDestination
`${trackGroup.cover.id}-x1500.jpg`
);
if (buffer) {
await fsPromises.writeFile(coverDestination, buffer);
}
}

await new Promise((resolve, reject) => {
Expand Down
10 changes: 5 additions & 5 deletions src/jobs/queue-worker.ts
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ export async function cleanUpFilesQueue() {
cleanUpOldFilesJob,
workerOptions
);
logger.info("Move Files From Minio to BackBlaze worker started");
logger.info("clean up old files worker started");

worker.on("completed", (job: any) => {
logger.info("completed:clean-up-old-files");
Expand All @@ -170,17 +170,17 @@ export async function moveFilesToBackBlazeWorker() {
moveFilesToBackblazeJob,
workerOptions
);
logger.info("Clean Up Files worker started");
logger.info("Move Files to Backblaze worker started");

worker.on("completed", (job: any) => {
logger.info("completed:clean-up-old-files");
logger.info("completed:move-file-to-backblaze");
});

worker.on("failed", (job: any, err: any) => {
logger.error("failed:clean-up-old-files", err);
logger.error("failed:move-file-to-backblaze", err);
});

worker.on("error", (err: any) => {
logger.error("error:clean-up-old-files", err);
logger.error("error:move-file-to-backblaze", err);
});
}
23 changes: 19 additions & 4 deletions src/jobs/send-mail.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@ import sendgrid from "nodemailer-sendgrid";
import Email from "email-templates";
import { logger } from "../logger";
import { Job } from "bullmq";
import Mail from "nodemailer/lib/mailer";

const viewsDir = path.join(__dirname, "../emails");

Expand All @@ -15,11 +16,25 @@ const transport: Transporter = !!process.env.SENDGRID_API_KEY
)
: ({ jsonTransport: true } as unknown as Transporter);

/**
* Cleanup incoming folder and more (later)
*/
export const sendErrorEmail = async (error: unknown) => {
sendMail({
data: {
template: "error-email",
message: {
to: "[email protected]",
},
locals: { error: JSON.stringify(error), time: new Date().toDateString() },
},
});
};

export const sendMail = async (job: Job) => {
export const sendMail = async (job: {
data: {
template: string;
message: Mail.Options;
locals: { [key: string]: any };
};
}) => {
logger.info(`sendMail: sending: ${job.data.template}`);
try {
const email = new Email({
Expand Down
6 changes: 4 additions & 2 deletions src/queues/moving-files-to-backblaze.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import { REDIS_CONFIG } from "../config/redis";
import logger from "../logger";
import { getObjectList, minioClient, uploadWrapper } from "../utils/minio";
import { sleep } from "../jobs/optimize-image";
import { sendErrorEmail } from "../jobs/send-mail";

const queueOptions = {
prefix: "mirlo",
Expand Down Expand Up @@ -53,7 +54,7 @@ export const startMovingFiles = async (bucketName: string) => {
fileName: file.name,
},
{
delay: i * 1500,
delay: i * 2000,
}
);
} catch (e) {
Expand All @@ -73,7 +74,8 @@ export const moveFilesToBackblazeJob = async (job: Job) => {
await uploadWrapper(bucketName, fileName, stream);
} catch (e) {
console.error(e);
logger.error("Error moving file");
sendErrorEmail(e);
logger.error(`Error moving file ${bucketName}/${fileName}`);
}
logger.info(`done transfering ${bucketName}/${fileName}`);
};

0 comments on commit b240211

Please sign in to comment.