مولّد سير عمل GitHub Actions

التالي

مستودع GitHub جديد بلا CI يبعد git push واحدة عن النشر المعطوب التالي. يكتب هذا المولّد ملف .github/workflows/ci.yml للبدء لـ Node أو PHP أو Laravel، موصّلا الاستخراج، وإجراء بيئة التشغيل الصحيح، وتثبيت التبعيات، وأمر الاختبار القياسي، كل ما تحتاجه لإضاءة النقطة الخضراء/الحمراء.

كيف تولّد سير عمل

  1. 1

    اختر المنصة

    Node (يستخدم `actions/setup-node`)، أو PHP (يستخدم `shivammathur/setup-php`)، أو Laravel (PHP + `php artisan test`).

  2. 2

    حدّد الفرع الرئيسي

    `main` هو الافتراضي؛ تجاوزه إن كان مستودعك ما زال يستخدم `master` أو اسما مخصصا.

  3. 3

    ولّد

    تجمّع الأداة ملف YAML بمشغّلي `push` و`pull_request` على ذلك الفرع.

  4. 4

    التزم في .github/workflows/

    أنشئ الملف عند `.github/workflows/ci.yml` وادفع: يضيء تبويب Actions عند الالتزام التالي.

كيف يبدو سير العمل

name: CI
on:
  push:
    branches: [main]
  pull_request:
jobs:
  test:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: shivammathur/setup-php@v2
        with:
          php-version: '8.4'
      - run: composer install --no-interaction
      - run: php artisan test

الإجراءات المثبَّتة من المولّد

الإجراء الغرض
actions/checkout@v4 استنساخ المستودع في المشغّل
actions/setup-node@v4 تثبيت سلسلة أدوات Node
shivammathur/setup-php@v2 تثبيت إصدار PHP بامتدادات

ما تضيفه تاليا

  • خطوة فحص (npm run lint، ./vendor/bin/phpstan analyse) قبل خطوة الاختبار.
  • بناء مصفوفي: شغّل عبر إصدارات Node/PHP متعددة بـ strategy.matrix.
  • رفع التغطية: codecov-action أو coveralls-action بعد خطوة الاختبار.
  • الأسرار: لا تضع رموزا صلبة أبدا، استخدم secrets.XXX وعرّفها تحت Settings → Actions.

مزالق شائعة

  • نسيان جلب الوسوم: with: { fetch-depth: 0 } على checkout حين يقرأ منطق إصدارك الوسوم.
  • استخدام صور Docker بـ latest: ثبّت الإصدارات لإبقاء التشغيلات قابلة لإعادة الإنتاج بعد أشهر.
  • تشغيل مجموعة اختبار من 30 دقيقة عند كل دفعة: قسّم المهام الطويلة بـ needs: لتوازيها.

الأسئلة الشائعة

عند .github/workflows/ci.yml في جذر مستودعك. يلتقط GitHub أي YAML تحت ذلك الدليل ويعرض كلا كسير عمل منفصل في تبويب Actions.

تشغّل طلبات السحب من التفرعات سير العمل لكن بـ GITHUB_TOKEN مضبوطا للقراءة فقط. لا يستطيع المساهمون الخارجيون الوصول إلى أسرارك ما لم توافق صراحة.

أضف كتلة strategy.matrix.php: [8.2, 8.3, 8.4] وأشِر إلى ${{ matrix.php }} في خطوة setup-php. سيطلق المشغّل مهمة لكل إصدار بالتوازي.

لا. يُعرض YAML المولَّد على الصفحة ولا يُرفَع ولا يُخزَّن في أي مكان؛ تنسخه أنت بنفسك.

أدوات ذات صلة

مولّد إعدادات Webpack

أنشئ ملف webpack.config.js لـ webpack 5 من نموذج قصير: حدّد entry ومجلد الإخراج والوضع (mode)، ثم فعّل TypeScript وBabel ومحمّل CSS وHtmlWebpackPlugin وخادم تطوير.

مرجع جدول ASCII

جدول ASCII كامل من 0 إلى 127 مع التمثيل العشري والست عشري والثماني والثنائي والمرجع الرقمي في HTML لكل محرف، بما في ذلك أكواد التحكم مثل NUL وLF وDEL.

أداة إزالة التشفير في لغة جافا سكريبت (JavaScript Deobfuscator)

إزالة التشفير من كود جافا سكريبت مُصغَّر أو مُعبَّأ باستخدام إعادة تسمية المتغيرات، وفك ترميز السلاسل النصية ومصفوفات البيانات، بالإضافة إلى عكس تسطيح تدفق التحكم وتحسين هيكله.

مولّد ملف .gitignore

اجمع قواعد استبعاد المشروع لـ Laravel وNode.js وPython وRails. انسخ الناتج أو نزّل ملف ZIP يحتوي على .gitignore، مع إبقاء القواعد الشخصية منفصلة.

مولد تراخيص

قم بإنشاء النص الكامل لترخيصات المصدر المفتوح مع إدخال اسمك والسنة المقابلة، ويشمل ذلك تراخيص MIT وApache 2.0 وGPLv3 وBSD-3 وMPL-2.0 وCC.

مولّد Dockerfile

أنشئ ملف Dockerfile وملف .dockerignore مطابقًا له لخمس بيئات تطبيقات. أدخل مدخل التشغيل الفعلي ودليل العمل والمنفذ الداخلي، ثم راجع الملفين.

الأداة متاحة بلغات أخرى