إجراءات GitHub
1 دقيقة للقراءة
استخدم OpenCX CLI في GitHub Actions للتحقق من صحة المحتوى عند كل دفعة أو طلب سحب.
سير العمل الأساسي
يقوم سير العمل هذا بتشغيل content check للتحقق من صحة ملفات المحتوى، وcontent gate لاكتشاف الانحرافات مقارنة بالعنصر البعيد.
yaml
name: Content CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
content:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: oven-sh/setup-bun@v2
- name: Validate content
run: bunx @opencx/cli content check
- name: Gate content
env:
OPENCX_API_KEY: ${{ secrets.OPENCX_API_KEY }}
run: bunx @opencx/cli content gate
كلا الأمرين ينهيان بالخروج برمز 1 عند الفشل، لذلك يفشل سير العمل تلقائيًا عندما يكون المحتوى غير صالح أو غير متزامن.
سير العمل للتحقق فقط
إذا كنت تحتاج فقط إلى التحقق المحلي (بدون مقارنة بعيدة)، يمكنك تخطي خطوة البوابة. هذا لا يتطلب OPENCX_API_KEY.
yaml
- name: Validate content
run: bunx @opencx/cli content check
إخراج JSON
استخدم --json للحصول على إخراج قابل للقراءة آليًا، مفيد للخطوات اللاحقة أو تقارير مخصصة.
yaml
- name: Gate content (JSON)
env:
OPENCX_API_KEY: ${{ secrets.OPENCX_API_KEY }}
run: bunx @opencx/cli content gate --json
إخراج JSON للبوابة له الشكل التالي:
json
{
"valid": true,
"synced": true,
"check": { "valid": true, "errors": [], "stats": {} },
"diff": { "hasChanges": false }
}
متغيرات البيئة
| المتغير | مطلوب | الوصف |
|---|---|---|
OPENCX_API_KEY | للبوابة فقط | مفتاح API للمقارنة البعيدة |
OPENCX_API_URL | لا | عنوان API مخصص (الافتراضي للإنتاج) |
قم بتخزين OPENCX_API_KEY كـ سر المستودع في إعدادات مستودع GitHub الخاص بك.