Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 11s
Build & Deploy / 🧪 QA (push) Successful in 1m20s
Build & Deploy / 🏗️ Build (push) Successful in 7m10s
Build & Deploy / 🚀 Deploy (push) Successful in 38s
Build & Deploy / 🧪 Smoke Test (push) Failing after 42s
Build & Deploy / 🔔 Notify (push) Successful in 2s
- Replaced corrupted HTML font files with binary WOFF2 versions. - Updated all opengraph-image.tsx files to await params, as required by Next.js 15+. - Improved OG image reliability by using SITE_URL for absolute image paths. - Added scripts/check-og-images.ts for automated production verification. - Integrated smoke_test job into deployment pipeline.
43 lines
1.0 KiB
TypeScript
43 lines
1.0 KiB
TypeScript
import { readFileSync } from 'fs';
|
|
import { join } from 'path';
|
|
|
|
/**
|
|
* Loads the Inter fonts for use in Satori (Next.js OG Image generation).
|
|
* Since we are using runtime = 'nodejs', we can read them from the filesystem.
|
|
*/
|
|
export async function getOgFonts() {
|
|
const boldFontPath = join(process.cwd(), 'public/fonts/Inter-Bold.woff2');
|
|
const regularFontPath = join(process.cwd(), 'public/fonts/Inter-Regular.woff2');
|
|
|
|
try {
|
|
const boldFont = readFileSync(boldFontPath);
|
|
const regularFont = readFileSync(regularFontPath);
|
|
|
|
return [
|
|
{
|
|
name: 'Inter',
|
|
data: boldFont,
|
|
weight: 700 as const,
|
|
style: 'normal' as const,
|
|
},
|
|
{
|
|
name: 'Inter',
|
|
data: regularFont,
|
|
weight: 400 as const,
|
|
style: 'normal' as const,
|
|
},
|
|
];
|
|
} catch (error) {
|
|
console.error('Failed to load OG fonts from filesystem, falling back to system fonts:', error);
|
|
return [];
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Common configuration for OG images
|
|
*/
|
|
export const OG_IMAGE_SIZE = {
|
|
width: 1200,
|
|
height: 630,
|
|
};
|