فحص شارات سير العمل

مكتمل

توفر شارات حالة سير العمل رؤية سريعة لصحة مشروعك وحالة البناء. إنها ضرورية لإيصال جودة المشروع للمستخدمين والمساهمين وأصحاب المصلحة الذين يزورون مستودعك.

فهم شارات سير العمل

شارات الحالة هي صور ديناميكية تعرض الحالة الحالية لمهام سير عمل GitHub Actions. يتم تحديثها تلقائيا لتعكس أحدث حالة بناء وتوفر ملاحظات مرئية فورية حول صحة مسار CI/CD لمشروعك.

سبب أهمية شارات سير العمل

مصداقية المشروع: تشير الشارات إلى أن مشروعك يتبع ممارسات التطوير الجيدة التقييم السريع: يمكن للمساهمين معرفة ما إذا كان المشروع مستقرا على الفور ضمان الجودة: فشل الشارات ينبه المشرفين إلى المشكلات التي تحتاج إلى الاهتمام المظهر الاحترافي: تعمل الشارات المهيأة جيدا على تحسين الصورة الاحترافية لمشروعك

إنشاء شارات سير العمل وتكوينها

بناء جملة الشارة الأساسية

تنسيق عنوان URL القياسي لشارات سير عمل GitHub Actions هو:

https://github.com/<OWNER>/<REPOSITORY>/actions/workflows/<WORKFLOW_FILE>/badge.svg

مكونات عنوان URL:

  • <OWNER>اسم مستخدم GitHub أو اسم مؤسستك:
  • <REPOSITORY>اسم المستودع:
  • <WORKFLOW_FILE>اسم ملف سير العمل الخاص بك (على سبيل المثال، ci.yml)

شارات خاصة بالفرع

عرض الحالة لفروع معينة عن طريق إضافة معلمة الفرع:

https://github.com/<OWNER>/<REPOSITORY>/actions/workflows/<WORKFLOW_FILE>/badge.svg?branch=<BRANCH_NAME>

تطبيقات الشارات العملية

تكامل README.md الأساسي

# My Awesome Project

![CI](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg)
![Deploy](https://github.com/myorg/myproject/actions/workflows/deploy.yml/badge.svg)

[![Build Status](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg)](https://github.com/myorg/myproject/actions/workflows/ci.yml)

A description of your project...

عرض شارة متعددة الفروع

# Project Status

| Branch  | Status                                                                                                  |
| ------- | ------------------------------------------------------------------------------------------------------- |
| Main    | ![Main Branch](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg?branch=main)       |
| Develop | ![Develop Branch](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg?branch=develop) |
| Release | ![Release Branch](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg?branch=release) |

مجموعة شارات متقدمة

# Build & Quality Status

[![CI Pipeline](https://github.com/myorg/myproject/actions/workflows/ci.yml/badge.svg)](https://github.com/myorg/myproject/actions/workflows/ci.yml)
[![Security Scan](https://github.com/myorg/myproject/actions/workflows/security.yml/badge.svg)](https://github.com/myorg/myproject/actions/workflows/security.yml)
[![Deploy to Production](https://github.com/myorg/myproject/actions/workflows/deploy.yml/badge.svg)](https://github.com/myorg/myproject/actions/workflows/deploy.yml)
[![Code Coverage](https://codecov.io/gh/myorg/myproject/branch/main/graph/badge.svg)](https://codecov.io/gh/myorg/myproject)
[![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE)

لقطة شاشة لشارة سير عمل فاشلة تظهر الحالة الحمراء التي تشير إلى فشل الإنشاء.

أفضل ممارسات شارة سير العمل

وضع الشارة الإستراتيجية

أعلى الملف التمهيدي: الموقع الأكثر وضوحا لحالة الإنشاء الأساسية قسم الحالة: قسم مخصص لصحة المشروع قوالب طلب السحب: تضمين شارات في أوصاف العلاقات العامة للسياق

<!-- In your README.md -->

# Project Name

![Build](https://github.com/owner/repo/actions/workflows/build.yml/badge.svg)
![Tests](https://github.com/owner/repo/actions/workflows/test.yml/badge.svg)

<!-- Rest of your README content -->

## Status Dashboard

### Build Pipeline

- **Main Branch**: ![Main](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=main)
- **Development**: ![Dev](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=develop)

### Quality Metrics

- **Code Coverage**: ![Coverage](https://codecov.io/gh/owner/repo/branch/main/graph/badge.svg)
- **Security**: ![Security](https://github.com/owner/repo/actions/workflows/security.yml/badge.svg)

أسماء سير العمل ذات المغزى

تأكد من أن ملفات سير العمل تحتوي على أسماء وصفية تنشئ تسميات شارات واضحة:

# .github/workflows/ci.yml
name: "CI Pipeline"  # Creates badge with "CI Pipeline" label

# .github/workflows/deploy-production.yml
name: "Production Deployment"  # Creates badge with "Production Deployment" label

# .github/workflows/security-scan.yml
name: "Security Analysis"  # Creates badge with "Security Analysis" label

أنماط تنظيم الشارة

مجمعة حسب الوظيفة:

## Build & Test

![CI](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg)
![Tests](https://github.com/owner/repo/actions/workflows/test.yml/badge.svg)

## Deployment

![Staging](https://github.com/owner/repo/actions/workflows/deploy-staging.yml/badge.svg)
![Production](https://github.com/owner/repo/actions/workflows/deploy-prod.yml/badge.svg)

## Quality & Security

![CodeQL](https://github.com/owner/repo/actions/workflows/codeql.yml/badge.svg)
![Dependency Check](https://github.com/owner/repo/actions/workflows/deps.yml/badge.svg)

اجعل الشارات قابلة للنقر لتوفير وصول مباشر إلى تفاصيل سير العمل:

[![Build Status](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/ci.yml)
[![Deploy Status](https://github.com/owner/repo/actions/workflows/deploy.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/deploy.yml)

تكامل الشارة المخصصة

شارات خدمة الجهات الخارجية

استكمال شارات GitHub Actions بمؤشرات الخدمة الخارجية:

<!-- Combine GitHub Actions with external services -->

![GitHub Actions](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg)
[![Codecov](https://codecov.io/gh/owner/repo/branch/main/graph/badge.svg)](https://codecov.io/gh/owner/repo)
[![Dependabot](https://api.dependabot.com/badges/status?host=github&repo=owner/repo)](https://dependabot.com)
[![npm version](https://badge.fury.io/js/package-name.svg)](https://badge.fury.io/js/package-name)

محتوى الشارة الديناميكية

إنشاء شارات تعرض معلومات إضافية:

<!-- Show specific branch status -->

![Main Branch](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=main&event=push)

<!-- Show latest release status -->

![Release](https://github.com/owner/repo/actions/workflows/release.yml/badge.svg?branch=main&event=release)

استكشاف أخطاء الشارة وإصلاحها ومراقبتها

المشكلات والحلول الشائعة

الشارة لا تتحدث:

  • التحقق من مسار ملف سير العمل في عنوان URL
  • التحقق من اكتمال سير العمل مرة واحدة على الأقل
  • تأكد من تطابق اسم سير العمل تماما

تعرض الشارة الحالة "غير معروفة":

  • ملف سير العمل غير موجود أو يحتوي على أخطاء في بناء الجملة
  • المستودع أو سير العمل خاص بدون أذونات مناسبة
  • معلمات عنوان URL مشوهة

مراقبة حالة الشارة

إعداد التنبيهات لتغييرات حالة الشارة:

# .github/workflows/badge-monitor.yml
name: Badge Status Monitor

on:
  workflow_run:
    workflows: ["CI Pipeline"]
    types: [completed]

jobs:
  notify-status:
    runs-on: ubuntu-latest
    if: ${{ github.event.workflow_run.conclusion == 'failure' }}
    steps:
      - name: Notify team of failing badge
        uses: 8398a7/action-slack@v3
        with:
          status: failure
          text: "🚨 CI Pipeline badge is now showing failure status"
        env:
          SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK_URL }}

استراتيجيات شارة متقدمة

لوحة معلومات متعددة البيئات

## Environment Status

| Environment     | Build                                                                                     | Deploy                                                                                  | Health Check                                                                            |
| --------------- | ----------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
| **Development** | ![Build](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=develop) | ![Deploy](https://github.com/owner/repo/actions/workflows/deploy-dev.yml/badge.svg)     | ![Health](https://github.com/owner/repo/actions/workflows/health-dev.yml/badge.svg)     |
| **Staging**     | ![Build](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=staging) | ![Deploy](https://github.com/owner/repo/actions/workflows/deploy-staging.yml/badge.svg) | ![Health](https://github.com/owner/repo/actions/workflows/health-staging.yml/badge.svg) |
| **Production**  | ![Build](https://github.com/owner/repo/actions/workflows/ci.yml/badge.svg?branch=main)    | ![Deploy](https://github.com/owner/repo/actions/workflows/deploy-prod.yml/badge.svg)    | ![Health](https://github.com/owner/repo/actions/workflows/health-prod.yml/badge.svg)    |

لوحة معلومات سلامة المشروع

# Project Health Dashboard

## Core Pipeline

[![Build](https://github.com/owner/repo/actions/workflows/build.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/build.yml)
[![Test](https://github.com/owner/repo/actions/workflows/test.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/test.yml)
[![Lint](https://github.com/owner/repo/actions/workflows/lint.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/lint.yml)

## Security & Quality

[![Security Scan](https://github.com/owner/repo/actions/workflows/security.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/security.yml)
[![Dependency Audit](https://github.com/owner/repo/actions/workflows/audit.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/audit.yml)
[![Code Quality](https://sonarcloud.io/api/project_badges/measure?project=owner_repo&metric=alert_status)](https://sonarcloud.io/dashboard?id=owner_repo)

## Deployment Status

[![Staging Deploy](https://github.com/owner/repo/actions/workflows/deploy-staging.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/deploy-staging.yml)
[![Production Deploy](https://github.com/owner/repo/actions/workflows/deploy-prod.yml/badge.svg)](https://github.com/owner/repo/actions/workflows/deploy-prod.yml)

تعد شارات سير العمل أكثر من مجرد مؤشرات حالة، فهي أداة اتصال تبني الثقة وتوفر الشفافية وتوضح التزامك بجودة التعليمات البرمجية. استخدمها بشكل استراتيجي لإنشاء عرض تقديمي احترافي وغني بالمعلومات.

للحصول على وثائق الشارة، راجع إضافة شارة حالة سير العمل.