البرنامج التعليمي: أتمتة نشر الحل باستخدام GitHub Actions لـ Microsoft Power Platform

في هذا البرنامج التعليمي، تتعلم كيفية:

  • إنشاء مستودع GitHub جديد
  • إنشاء سيرتي عمل في GitHub باستخدام GitHub Actions لـ Microsoft Power Platform

بإمكان عمليات سير العمل تصدير تطبيقك تلقائيًا (كحل غير مُدار) من بيئة تطوير، وإنشاء أثر الإصدار (حل مُدار)، ونشر التطبيق في بيئة الإنتاج. يستخدم هذا البرنامج التعليمي حل ALMLab الذي قمت بإنشائه والبيئات التي قمت بإعدادها في البرامج التعليمية السابقة.

البرامج التعليمية ذات الصلة: الشروع في العمل، وإنشاء تطبيق يستند إلى النموذج.

إنشاء حساب GitHub

  1. انتقل إلى https://github.com وحدد التسجيل أو بدء نسخة تجريبية مجانية (أو تسجيل الدخول إذا كان لديك حساب موجود).

    إنشاء حساب

  2. بعد إنشاء حسابك، أنشئ مستودعا عن طريق تحديد إنشاء مستودع أو جديد.

    إنشاء مستودع

    قد ترى شاشة البداية البديلة التالية:

    إنشاء مستودع جديد

  3. أنشئ مستودعك الجديد وقم بتسميته poweractionslab. تأكد من تحديد إضافة ملف README لبدء المستودع واختر إنشاء مستودع.

    بدء المستودع.

إنشاء سر جديد لمصادقة الكيان الرئيسي للخدمة

  1. انتقل إلى المستودع الخاص بك وحدد الإعدادات. قم بتوسيع Secrets، ثم حدد Actions.

  2. في صفحة Secrets ، قم بتسمية السر PowerPlatformSPN. أدخل سر العميل من تسجيل التطبيق الذي أنشأته في Microsoft Entra في حقل Value، ثم حدد Add secret. ستشير إلى سر العميل في ملفات YML التي تحدد مهام سير العمل GitHub لاحقا في هذا البرنامج التعليمي.

    إنشاء سر الكيان الخدمي

    يتم الآن تخزين السر الخاص بالعميل بأمان كسر GitHub.

إنشاء سير عمل لتصدير وفك حزمة ملف الحل إلى فرع جديد

  1. حدد الإجراءات، ثم حدد إعداد سير عمل بنفسك. أو حدد Configure في مربع Simple workflow ضمن قسم suggested for this repository .

    إعداد سير العمل.

  2. ترى ملف YAML جديدًا مع سير عمل أساسي لمساعدتك على البدء في GitHub Actions.

    عينة ملف YML

  3. احذف المحتوى الذي تم إنشاؤه مسبقا، ثم الصق المحتوى من ملف export-and-branch-solution-with-spn-auth.yml . أعد تسمية الملف باسم export-and-branch-solution.yml.

    إعادة تسمية المحتوى واستبداله.

  4. حدّث <ENVIRONMENTURL> بواسطة عنوان URL لبيئة التطوير التي تريد التصدير منها (على سبيل المثال: https://poweractionsdev.crm.dynamics.com).

  5. حدّث <APPID> و<TENANT ID> بواسطة قيمك.

    • إذا كنت تستخدم بيانات الاعتماد، فالصق ملف export-and-branch-solution.yml بدلاً من محتويات الملف export-and-branch-solution-with-spn-auth.yml. حدّث <USERNAME> باستخدام اسم المستخدم الذي تستخدمه للاتصال بالبيئة.

      إعادة تسمية المحتوى واستبداله

    تلميح

    إذا لم تكن على دراية GitHub Actions وتريد معرفة المزيد، فراجع الوثائق الرسمية في https://docs.github.com/en/actions.

  6. أنت الآن جاهز لاعتماد تغييراتك. حدد Start commit، واكتب Create export yml في حقل العنوان، ثم أضف وصفًا (اختياري). بعد ذلك، حدد تأكيد ملف جديد.

    بدء الكوميت.

تهانينا، لقد أنشأت أول سير عمل GitHub باستخدام الإجراءات التالية:

  • من أنا: يضمن أنه يمكنك الاتصال بنجاح بالبيئة التي تريد التصدير منها.
  • تصدير الحل: يُصدِّر ملف الحل من بيئة التطوير الخاصة بك.
  • فك حزمة الحل: ملف الحل الذي يصدره الخادم هو ملف مضغوط (ZIP) مع ملفات التكوين الموحدة. هذه الملفات الأولية غير مناسبة لإدارة التعليمات البرمجية المصدر لأنها غير مُهيكلة بحيث تُمكّن أنظمة إدارة التعليمات البرمجية المصدر من إجراء مقارنة الفروق بين الملفات والتقاط التغييرات التي تريد الالتزام بها للتحكم بالمصادر. تحتاج إلى استخراج ملفات الحل لجعلها مناسبة لتخزينها ومعالجتها في التحكم في المصدر.
  • حل التفرع: إنشاء فرع جديد لتخزين الحل المُصدَّر.

اختبار سير عمل التصدير وفك الضغط

  1. بعد ذلك، اختبر أن سير العمل يعمل. انتقل إلى الإجراءات، وحدد تشغيل سير العمل، واختر تشغيل سير العمل. إذا كنت تستخدم اسم حل مختلفا عن ALMLab، فقم بتغيير القيمة هنا مع الاحتفاظ بالقيم الأخرى كما هي.

    تشغيل سير العمل.

  2. بعد 5–10 ثوانٍ، يبدأ سير العمل. يمكنك تحديد سير العمل قيد التشغيل لمراقبة التقدم.

    انقر لعرض سير العمل.

    حدد سير العمل واعرضه.

  3. بعد انتهاء سير العمل، تحقق من إنشاء فرع جديد مع فك حزمة الحل إلى المجلد solutions/ALMLab. انتقل إلى علامة التبويب Codeوقم بتوسيع القائمة المنسدلة الفروع.

  4. حدد الفرع الذي أُنشئ الإجراء له.

  5. تحقق من إنشاء المجلد solutions/ALMLab في الفرع الجديد. ثم قم بإنشاء طلب سحب لدمج التغييرات في الفرع الرئيسي. اختر المساهمة وفي القائمة المنبثقة اختر فتح طلب السحب.

  6. في شاشة فتح طلب سحب ، أضف عنوانا ووصفا إذا أردت ذلك، ثم حدد إنشاء طلب سحب.

  7. يتم تحديث الشاشة لإظهار طلب السحب الجديد. عند إنشاء طلب السحب، تحصل على تأكيد على أن الفرع الخاص بك لا يتعارض مع الفرع الرئيسي. يعني هذا التأكيد أنه يمكنك دمج التغييرات في الفرع الرئيسي تلقائيا. حدد Merge pull request ثم حدد Confirm merge. اختياريا، حدد حذف الفرع لإزالة الفرع الملغى الآن.

    عرض الفروع

  8. ارجع إلى الفرع الافتراضي (الرئيسي) وتحقق من توفر الحل هناك.

إنشاء سير عمل قابل لإعادة الاستخدام لإنشاء عنصر بناء واستيراده إلى الإنتاج

في هذا القسم، قم بإنشاء سير عمل إضافي:

  • إنشاء حل مُدار ونشره كأصل GitHub
  • استيراد أثر الإصدار إلى بيئة الإنتاج
  1. انتقل إلى Actions وحدد New workflow.

    إنشاء سير عمل جديد.

  2. اختر إعداد سير عمل بنفسك.

    إعداد سير عمل.

  3. أعد تسمية عنوان سير العمل إلى release-solution-to-prod-with-inputs. انسخ المحتوى من ملف release-solution-to-prod-with-inputs.yml والصقه في شاشة تحرير ملف جديد .

    إعادة التسمية ولصق التعليمات البرمجية.

  4. ثبّت التغييرات. اختر بدء Commit، ثم أضف عنوانًا ووصفًا (اختياري). بعد ذلك، حدد إيداع ملف جديد.

    اعتماد التغييرات.

استدعاء سير العمل القابل لإعادة الاستخدام في حدث الإصدار

في هذا القسم، يمكنك استدعاء سير العمل القابل لإعادة الاستخدام في حدث الإصدار.

  1. انتقل إلى الإجراءات وحدد سير عمل جديد.

    إنشاء سير عمل جديد.

  2. اختر إعداد سير عمل بنفسك.

    إعداد سير عمل.

  3. أعد تسمية عنوان سير العمل إلى release-action-call. انسخ المحتوى من ملف release-action-call.yml والصقه في شاشة تحرير ملف جديد .

    أعِد التسمية والصق التعليمات البرمجية.

  4. حدّث المتغيرات التالية في ملف سير العمل الجديد:

    • حدّث <BUILD_ENVIRONMENT> باستخدام عنوان URL لبيئة الإنشاء التي تستخدمها لإنشاء الحل المدار. على سبيل المثال: https://poweractionsbuild.crm.dynamics.com.
    • قم بالتحديث <PROD_ENVIRONMENT> باستخدام عنوان URL لبيئة الإنتاج التي تقوم بالنشر إليها. على سبيل المثال: https://poweractionsprod.crm.dynamics.com.
    • قم بالتحديث <APP_ID> باستخدام معرف التطبيق (العميل) الذي تجده في الجزء App registrations من microsoft مدخل Azure عن طريق تحديد التسجيل الذي أنشأته سابقا في هذا البرنامج التعليمي.
    • قم بالتحديث <TENANT_ID> باستخدام معرف الدليل (المستأجر) الذي تجده في الجزء App registrations من مدخل Azure Microsoft عن طريق تحديد التسجيل الذي أنشأته سابقا في هذا البرنامج التعليمي.
  5. ثبّت التغييرات. اختر بدء الالتزام، ثم أضف عنوانًا (اختياري) ووصفًا (اختياري). بعد ذلك، حدد إيداع ملف جديد.

    إيداع التغييرات.

اختبر سير عمل الإصدار إلى بيئة الإنتاج

أنت الآن جاهز لاختبار سير العمل الأخير. يتم تشغيل سير العمل هذا عند نشر إصدار جديد في الإنتاج.

  1. انتقل إلى الإصدارات.

    الانتقال إلى الإصدارات‏‎.

  2. حدد صياغة إصدار جديد.

  3. أضف علامة إصدار وعنوانًا واختر نشر الإصدار.

  4. حدد الإجراءات لعرض سير العمل قيد التشغيل.

    حدد لعرض سير العمل.

  5. اختر سير العمل قيد التشغيل لعرض الإجراءات أثناء تشغيلها.

    عرض سير العمل.

  6. انتظر حتى اكتمال كل إجراء.

    عرض الفرع.

  7. بعد انتهاء سير العمل، سجل الدخول إلى بيئة الإنتاج الخاصة بك وتحقق من أن الحل تم نشره كحل مُدار.

تطبيق التحديث ومراجعة التغييرات قبل إصدار الإنتاج

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

  1. انتقل إلى حل ALMLab في بيئة التطوير الخاصة بك وحدد Edit أو حدد اسم عرض الحل.

    تحرير الحل.

  2. حدد جدول طلب الإجازة واعرضه.

    عرض الجدول.

  3. حدد + إضافة عمود وأنشئ العمود الجديد كما هو موضح في الشكل التالي.

    إضافة عمود.

    قيم الحقول المحدثة:**

    • اسم العرض: تمت الموافقة عليه
    • نوع البيانات: نعم/لا
  4. حدد تم.

  5. حدد حفظ الجدول. إضافة عمود.

  6. ارجع إلى علامة التبويب Actions في مستودعات GitHub الخاصة بك، وحدد تشغيل سير العمل، ثم حدد الزر تشغيل سير العمل.

    تشغيل سير العمل.

  7. بعد 5-10 ثوان، يبدأ سير العمل. حدد سير العمل قيد التشغيل لمراقبة تقدمه.

    تحديد سير عمل.

    عرض سير العمل.

  8. بعد انتهاء سير العمل، انتقل إلى الفرع الجديد عن طريق تحديد Code ثم Branchs.

    الانتقال إلى الفرع.

  9. حدد الفرع الذي قمت بإنشائه عن طريق توسيع contribute وتحديد Open pull request.

  10. أضف عنوانا (اختياريا) ثم حدد إنشاء طلب سحب.

  11. بعد تحديث المحتوى، حدد علامة التبويب ملفات تم تغييرها .

  12. لاحظ تمييز التغييرات التي تم إدخالها علي الحل باللون الأخضر للإشارة إلى إضافة هذا القسم من الملف عند المقارنة بالملف نفسه في الفرع الرئيسي.

  13. ارجع إلى علامة التبويب المحادثة. حدد طلبات السحب، ثم حدد طلب السحب الذي أنشأته مسبقًا.

  14. في صفحة طلب السحب، حدد Squash and merge لدمج ملف الحل المحدّث في الفرع الرئيسي. احذف اختياريًا ما تم دمجه الآن في الفرع الرئيسي

    فتح طلب سحب للفرع الجديد، وعرض التغييرات، والدمج إلى الفرع الافتراضي

  15. اتبع الخطوات الواردة في قسم سير عمل اختبار الإصدار للإنتاج لإنشاء إصدار جديد والتحقق من نشر الحل المحدث في بيئة الإنتاج الخاصة بك.

تهانينا، لقد نجحت في إعداد نموذج سير عمل CI/CD باستخدام إجراءات GitHub!

راجع أيضًا

أتمت سير عملك من فكرة إلى الإنتاج