تلقي إشعارات حول الإصدارات القادمة من Intlayer

    خطأ في البناء في CI/CD

    إذا حصلت على خطأ مثل هذا في Next.js:

    Error: An error occurred in the Server Components render. The specific message is omitted in production builds to avoid leaking sensitive details. A digest property is included on this error instance which may provide additional details about the nature of the error

    إليك بعض الحلول:

    1. القواميس المفقودة

    تأكد من أن القواميس تم بناؤها في مرحلة البناء.

    من الشائع أن يعمل البناء محليًا ولكن لا يعمل على CI/CD. السبب هو أنه محليًا، يكون مجلد .intlayer موجودًا، ولكن على CI/CD، لا يكون موجودًا لأنه مستبعد من البناء.

    يمكنك إصلاح ذلك عن طريق إضافة سكربت ما قبل البناء في ملف package.json الخاص بمشروعك.

    {  // ...  "scripts": {    "prebuild": "npx intlayer dictionaries build", // سيتم تشغيله قبل البناء    "build": "next build",  },}
    لاحظ أنه إذا كنت تستخدم دالة withIntlayer، أو الإضافة المكافئة للباندلر في إطار عملك، فسيتم تشغيل سكربت ما قبل البناء قبل البناء.

    2. المتغيرات البيئية المفقودة أثناء وقت البناء / التشغيل

    في الحاويات، أو المنصات التي تعتمد النشر التلقائي، يُنصح باستبعاد ملف .env من البناء.

    .gitignore or .dockerignore
    # المتغيرات البيئية.env**/.env.env.***/.env.*

    إذا لم تكن المتغيرات البيئية متاحة أثناء وقت البناء، فسيتم إصدار خطأ.

    import { Metadata } from "next";export const generateMetadata = async ({ params }): Promise<Metadata> => ({  metadataBase: new URL(process.env.NEXT_PUBLIC_URL),});

    من المحتمل أن هذا لا يتعلق بـ Intlayer. لذا تحقق من المتغيرات البيئية الخاصة بك أثناء وقت البناء على منصة CI/CD الخاصة بك.