إدارة عمليات الطرح والإصدارات

إذا فعّلت عمليات الطرح التلقائي، سيتم طرح إصدار جديد من تطبيقك تلقائيًا في كل مرة تدفع فيها عملية تثبيت جديدة إلى فرع الإصدار العلني في مستودع GitHub App Hosting. ويمكنك الاطّلاع على حالة الطرح في وحدة تحكّم Firebase أو في عملية التحقّق من App Hosting GitHub.

بالإضافة إلى ذلك، تتيح App Hosting عمليات طرح يتم تشغيلها يدويًا من أجل دمج CI/CD أو أي حالة أخرى تريد فيها فرض عملية طرح.

عرض عمليات الطرح

تتيح لك وحدة تحكّم Firebase الوصول إلى معلومات تفصيلية عن جميع عمليات طرح تطبيقك.

انتقِل إلى الاستضافة وبدون خادم> استضافة التطبيقات، ثم انقر على عرض للخادم الخلفي الذي تريد الاطّلاع على عمليات طرحه. تعرض علامة التبويب عمليات الطرح للخادم الخلفي جدولاً يتضمّن سجلّاً بجميع عمليات الطرح لهذا الخادم الخلفي.

يتضمّن كل إدخال في عملية الطرح روابط تؤدي إلى مهمة Cloud Build والتغيير أو عملية الإيداع التي أدّت إلى بدء عملية الطرح، بالإضافة إلى معلومات أساسية حول المؤلّف وتاريخ الإنشاء وحالة عملية الطرح.

  • Cloud Build هي بيئة الإنشاء التي يتم فيها تنفيذ App Hosting أمر إنشاء تطبيقك. يمكنك الوصول إلى سجلات Cloud Build من خلال النقر على رقم تعريف الإصدار.
  • التغيير هو عملية الإرسال إلى GitHub أو إجراء آخر أدّى إلى بدء عملية الطرح.

تفعيل عملية طرح يدويًا

إذا أردت بدء طرح يدويًا من مصدر GitHub بدون إرسال عملية تثبيت جديدة، يمكنك إنشاء عملية طرح من وحدة تحكّم Firebase أو واجهة سطر الأوامر Firebase. ويُعدّ ذلك مفيدًا في حالات مثل:

  • فرض إعادة إنشاء المحتوى الثابت
  • السماح لنظام CI/CD بتفعيل عمليات الطرح
  • قصر عمليات طرح الإصدارات على تواريخ أو أوقات محدّدة

لبدء طرح إصدار في وحدة تحكّم Firebase، اتّبِع الخطوات التالية:

  1. في وحدة تحكّم Firebase، انتقِل إلى الاستضافة وبدون خادم > استضافة التطبيقات.
  2. انقر على عرض للواجهة الخلفية التي تريد إنشاء طرح لها.
  3. في ملخّص لوحة بيانات الخلفية، انقر على إنشاء طرح.
  4. اختَر الفرع الذي تريد نشره.
  5. اختَر عملية الإيداع التي تريد نشرها، إما أحدث عملية إيداع أو عملية إيداع سابقة محدّدة برقم تعريف عملية الإيداع.
  6. انقر على إنشاء. يتم عرض الحالة ورقم الإصدار لعملية الطرح في جدول سجلّ عمليات الطرح. عند اكتمال عملية الطرح، سيظهر هذا الطرح على أنّه الطرح الحالي.

لبدء طرح إصدار في واجهة سطر الأوامر Firebase، نفِّذ الأمر التالي وحدِّد الفرع الذي تريد طرح الإصدار فيه عند مطالبتك بذلك:

firebase apphosting:rollouts:create BACKEND_ID

بدلاً من ذلك، يمكنك بدء طرح آخر عملية دمج لفرع معيّن باستخدام الخيار --git-branch:

firebase apphosting:rollouts:create BACKEND_ID
--git_branch BRANCH_NAME

يمكنك أيضًا إنشاء طرح باستخدام عملية تثبيت محدّدة باستخدام الخيار --git-commit:

firebase apphosting:rollouts:create BACKEND_ID
--git_commit COMMIT_ID

استعادة طرح سابق

يمنحك App Hosting خيارَين لاستعادة طرح سابق:

  • الرجوع إلى الإصدار السابق فورًا بدون إعادة الإنشاء
  • إعادة الإنشاء والعودة إلى إصدار سابق

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

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

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

  1. في وحدة تحكّم Firebase، انتقِل إلى الاستضافة وبدون خادم > استضافة التطبيقات.
  2. انقر على عرض للخادم الخلفي الذي تريد إنشاء عملية إرجاع له.
  3. انقر على علامة التبويب عمليات الطرح.
  4. في جدول السجلّ للخادم الخلفي، انقر على رمز قائمة الخيارات الإضافية لإصدار سابق.
  5. اختَر الرجوع إلى هذا الإصدار وأكِّد اختيارك.

إعادة الإنشاء والرجوع إلى الإصدار السابق

إذا أردت العودة إلى إصدار أقدم من تطبيقك مع الاحتفاظ بالإعدادات الحالية، يمكنك إعادة إنشاء التطبيق كجزء من عملية العودة إلى الحالة السابقة. على سبيل المثال، إذا كان أحدث إصدار قد عدّل قيمة مفتاح واجهة برمجة التطبيقات في Secret Manager، يمكن أن تضمن إعادة الإنشاء استخدام المفتاح الجديد في تطبيقك بعد التراجع.

لإعادة الإنشاء والتراجع عن التغييرات، اتّبِع الخطوات التالية:

  1. في وحدة تحكّم Firebase، انتقِل إلى الاستضافة وبدون خادم > استضافة التطبيقات.
  2. انقر على عرض لوحة البيانات للخادم الخلفي الذي تريد إنشاء عملية استرجاع له.
  3. انقر على علامة التبويب عمليات الطرح.
  4. انقر على إنشاء طرح.
  5. في مربّع الحوار إنشاء طرح، انقر على إصدار سابق، ثم أدخِل رقم تعريف الإصدار الذي تريد إعادة إنشائه والرجوع إليه. يشكّل معرّف عملية الإتمام جزءًا من "تفاصيل التغيير" لكل طرح مُدرَج في سجلّ عمليات الطرح، وهو مضمّن بين قوسين في التصنيف.
  6. انقر على إنشاء لبدء عملية العودة إلى الحالة السابقة.

تغيير إعدادات الطرح

يمكنك تغيير الإصدار العلني لعمليات الطرح وإيقاف عمليات الطرح التلقائي أو تفعيلها باستخدام عناصر التحكّم في عرض الإعدادات > النشر في لوحة البيانات الخاصة بالخادم الخلفي.

  1. في وحدة تحكّم Firebase، انتقِل إلى الاستضافة وبدون خادم > استضافة التطبيقات.
  2. انقر على عرض للواجهة الخلفية التي تريد تعديل إعدادات الطرح فيها.
  3. في لوحة بيانات الخلفية، انقر على الإعدادات. يعرض العرض التلقائي معلومات حول النطاقات والنطاقات المخصّصة.
  4. اختَر طريقة عرض النشر. في هذا العرض، يمكنك تغيير الفرع المباشر لعمليات الطرح وإيقاف عمليات الطرح التلقائي أو تفعيلها. بالإضافة إلى ذلك، تتوفّر خيارات لضبط الدليل الجذر للتطبيق والبيئة الخاصة بالخادم الخلفي (راجِع النشر في بيئات متعددة).

إدارة عمليات الطرح التلقائي

تتضمّن App Hosting تلقائيًا قائمة "مطلوبة" من جميع الملفات، ما يعني أنّ كل عملية إيداع جديدة في مستودعك تؤدي إلى إنشاء إصدار جديد وطرحه. ومع ذلك، لتوفير الوقت ومنع عمليات نشر غير ضرورية، يمكنك ضبط App Hosting لتخطّي عمليات الإنشاء استنادًا إلى مسارات الملفات المحدّدة التي تم تعديلها في عملية الإيداع.

يمكنك ضبط هذا الإعداد ضِمن الإعدادات > عمليات الطرح > مشغّلات عمليات الطرح. يمكنك هنا ترك حقل المسارات المطلوبة فارغًا إذا كنت تريد أن يؤدي كل التزام جديد في مستودعك إلى بدء عملية إنشاء وإصدار جديدة، أو يمكنك تحديد الأدلة أو الملفات التي يجب أن تؤدي دائمًا إلى بدء عملية إصدار. في حال تحديد أدلة، احرص على إضافة جميع المسارات التي يجب أن تؤدي التغييرات فيها إلى طرح إصدار.

لن تؤدي الدلائل أو الملفات التي تضيفها إلى المسارات التي تم تجاهلها إلى بدء طرح تلقائي. في الحالات التي يندرج فيها دليل فرعي ضمن كلّ من القائمتَين المطلوبة والمتجاهَلة، لن يتم بدء طرح تلقائي. في حال ملء قائمة المسارات التي تم تجاهلها فقط، ستملأ App Hosting تلقائيًا الحقل "*" للمسارات المطلوبة.

لقطة شاشة لواجهة المستخدِم الموضّحة في هذه الصفحة

إذا أرسلت عملية دمج لا تتطابق فيها أي من الملفات المعدَّلة مع المسارات المطلوبة (أو إذا تم استبعاد جميع التغييرات بشكل صريح من خلال المسارات التي تم تجاهلها)، سيظل App Hosting يقر باستلام حدث GitHub، ولكن سيتم تصنيف حالة الإصدار وحالة الطرح على أنّهما SKIPPED، ولن يتم بدء أي عملية طرح تلقائية.