یک فایل کانفیگ GitHub Actions برای یک پروژه JavaScript (Node.js) بساز تا هنگام push به شاخه main و هنگام باز شدن pull request تستها اجرا شده و پس از اجرای npm run build یک artifact از پوشه build آپلود شود.
2.0 بازدید آخرین ویرایش در 202 روز قبل ساعت 02:30 0.0
برای حل مسئله یک workflow به صورت YAML در مسیر .github/workflows/ci.yml ایجاد کن که با تریگرهای on: push (branch: main) و on: pull_request اجرا شود؛ job اصلی روی runner مثل ubuntu-latest اجرا شود و مراحل شامل actions/checkout برای گرفتن کد، actions/setup-node برای انتخاب نسخه Node، کش کردن وابستگیها، اجرای npm ci، اجرای تستها (مثلاً npm test) و در پایان اجرای npm run build و آپلود خروجی با actions/upload-artifact باشد. نکات مفید: مطمئن شو که اسکریپتهای لازم در package.json تعریف شدهاند، از npm ci برای نصب معتمد استفاده کن، مسیر پوشه build را صحیح بده و در صورت نیاز برای تست روی نسخههای مختلف Node از matrix استفاده کن؛ برای عملیات حساس مثل انتشار از secrets و متغیرهای محیطی استفاده کن.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای اطمینان از سازگاری با چند نسخه Node، از matrix در workflow استفاده کن و node-versionهای مختلف را مشخص کن. از npm ci به جای npm install استفاده کن و با فعال کردن caching برای node_modules سرعت اجرا را بالا ببر. در sequence CI، ابتدا tests را با npm test اجرا کن و تنها در صورت موفقیت به npm run build برو و نهایتاً خروجی پوشه build را با actions/upload-artifact منتشر کن. برای امنیت، از secrets مانند NPM_TOKEN استفاده کن و ورودیهای محیطی را به صورت محیطی در اختیار اسکریپتها قرار بده و مطمئن شو که مسیر build درست است و اسکریپتهای لازم در package.json تعریف شدهاند.
گزارش