Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Continuous Integration
Code

التسليم المستمر مع fastlane لنظام iOS

by
Difficulty:IntermediateLength:MediumLanguages:

Arabic (العربية/عربي) translation by Aisy Abdullah (you can also view the original English article)

المقدمة

لقد كان مطورو iOS محظوظين بما يكفي للاستمتاع والعمل مع منصة التطوير القوية التي قدمتها Apple ، وفي مقدمتها Xcode. ساعد هذا في إلهام التطبيقات الجذابة والقوية التي يستمتع بها المستهلكون على App Store اليوم. يوفر Xcode بيئة بديهية IDE ، إلى جانب ظهور لغة سويفت باعتبارها لغة برمجة حديثة حقا ، جعلت البرمجة على منصة التمتع الهائل.

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

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

The fastlane logo

طور بواسطة فيليكس كراوز ( krausefx) ، يتألف fastlane من مجموعة مفتوحة المصدر من الأدوات التي توحد أتمتة بناء تطبيقات iOS ونشرها عبر سطر الأوامر ، بالإضافة إلى التكامل مع مكتبات الجهات الخارجية المختلفة بالإضافة إلى واجهات برمجة تطبيقات Apple الخاصة. نظرًا لأن أداة fast stane من بين مجموعة المطورين في iOS ، وتدعمها Google ، فإن Fastlane سيوفر لك الكثير من الوقت من خلال أتمتة الكثير من المهام اليومية والأسبوعية.

في هذا البرنامج التعليمي ، سنستكشف مميزتين شائعتين جدًا في fastlane: توقيع الشفرة وتعبئة / توزيع التطبيقات.

أهداف هذا البرنامج التعليمي

سيقدم لك هذا البرنامج التعليمي لك toolchain fastlane ويعرض لك كيفية الاستفادة من الأداة لأتمتة وتحسين سير عمل تطوير iOS الخاص بك. سوف تتعلم:

  • أساسيات البدء مع fastlane
  • رمز توقيع التطبيق الخاص بك
  • تعبئة وتوزيع تطبيقك

المعرفة المفترضة

يفترض هذا البرنامج التعليمي أن لديك معرفة عملية بتطوير Swift و iOS ، على الرغم من أنك لن تقوم بأي ترميز Swift في هذا البرنامج التعليمي. سوف تستخدم موجه الأوامر لإنشاء أوامر fastlane وتشغيلها.

الشروع في العمل مع fastlane

تتم كتابة سلسلة أدوات fastlane بشكل أساسي في Ruby وتتصل بمركز Apple Developer و iTunes Connect API عبر مكتبة سفينة الفضاء Ruby ، ​​مصادقة وتفويض المستخدمين بشكل آمن. وهي تعمل حول إنشاء ملف تكوين ، يسمى Fastfile ، والذي يمكنك التفكير فيه كملف وصفة حيث تقوم بضبط الإجراءات التي تريد تنفيذها عند بناء التطبيق الخاص بك. يتم تنظيم هذه الإجراءات في 'الممرات'. على سبيل المثال ، يمكنك تكوين ممر للانتشار إلى App Store ، ومسار آخر للتوزيع على TestFlight. يمكن أن يتكون المسار من الإجراءات الفردية التالية:

  1. بناء مشروعك
  2. زيادة رقم البنية
  3. اختبارات وحدة التشغيل
  4. إرسال .ipa إلى TestFlight
  5. إرسال رسالة سلاك إلى فريقك

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

ولكن قبل الغوص في إجراءات fastlane ، ستحتاج إلى إعداد البيئة الخاصة بك لاستخدام fastlane.

إعداد fastlane

تأكد من تثبيت أحدث إصدار من Xcode. ستحتاج أيضًا إلى تثبيت أدوات Xcode على نظامك. يمكنك التحقق من تثبيت أدوات Xcode عن طريق إدخال ما يلي في الجهاز:

إذا استعدت المسار الكامل لمجلد مطوري البرامج ، فأنت على استعداد للذهاب. يجب أن ترى شيء مثل ما يلي.

خلاف ذلك ، دعونا الحصول على أحدث إصدار من أدوات سطر الأوامر Xcode عن طريق كتابة ما يلي ، في المحطة:

يجب أن تحصل على موجه مشابه لما يلي:

gcc command prompt

بعد ذلك ، ستحتاج إلى تثبيت Homebrew. Homebrew هو مدير حزم قوي يتيح لك تثبيت المئات من الأدوات مفتوحة المصدر و fastlane فيما بينها. لتثبيت برنامج Homebrew ، اكتب ما يلي في سطر الأوامر:

بمجرد إعداد Homebrew ، يمكنك تثبيت fastlane عن طريق إدخال:

لاحظ أنه إذا كنت تفضل عدم تثبيت Homebrew ، فيمكنك تثبيت fastlane مباشرة في المحطة عن طريق ruby ​​، ​​عن طريق إدخال ما يلي:

لتأكيد Fastlane مثبت وجاهز على النظام الخاص بك ، أدخل الأمر التالي في المحطة الطرفية لتهيئة ملف تكوين Fastlane جديد:

ستتم مطالبتك بإدخال معرف Apple الخاص بك بحيث يمكن ربط Fastlane بسهولة في iTunes Connect. املأ أي أسئلة سريعة أخرى وستظهر لك دليلاً فرعيًا جديدًا / سريعًا. سوف تكون مهتمًا بشكل أساسي بملف التهيئة / fastlane / Fastfile ، حيث ستقوم بتنسيق كافة إجراءات fastlane.

إلقاء نظرة سريعة على الملف. ستعمل معها على مدى الأقسام القليلة التالية ، بدءًا من تهيئة fastlane إلى رمز تسجيل تطبيقاتك.

رمز توقيع تطبيقاتك

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

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

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

تدمج المطابقة بين الإجراءين السابقين ولكن تسمح لك بمشاركة هوية توقيع الشفرة عبر فريقك ، أو عبر عدة أجهزة ، بشكل آمن وخصوصية من خلال مستودع GitHub الخاص بك ، وإنشاء جميع الشهادات والملفات الشخصية اللازمة حتى يتمكن الأعضاء الجدد من الحصول على تلك الاعتمادات ببساطة استدعاء المباراة fastlane. لمزيد من المعلومات حول مفهوم المطابقة ، راجع المنهج الجديد لدليل توقيع الشفرة.

لبدء استخدام الشهادات ، قم بتشغيل الأمر التالي:

وبالمثل ، للتشغيل تنفس الصعداء:

إذا كنت ترغب في الاطلاع على قائمة الخيارات المتوفرة أو توفر التنهد ، يمكنك القيام بذلك باستخدام الأوامر التالية:

إلى جانب تشغيل هذه الأوامر المخصصة ، يمكنك تضمين أي من الإجراءين أو كلاهما كجزء من سير العمل الآلي الخاص بك ، في ملف تكوين Fastfile الذي ذكرته سابقًا:

يمكنك بعد ذلك تشغيل المسار بالكامل عن طريق إصدار الأمر التالي:

باستخدام سطرين بسيطين ، يمكنك الآن الاستفادة من إنشاء شهاداتك وملفات التخصيص الخاصة بك والحفاظ عليها تلقائيًا. بعد ذلك ، ستتعمق في كيفية مساعدة fastlane في حزم تطبيقاتك وتوزيعها.

حزمة * توزيع تطبيقاتك

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

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

لتحديد مساحة عمل ومخطط معين ، يمكنك إضافة المعلمات الاختيارية التالية:

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

يمكنك بعد ذلك تحرير هذا الملف وإدخال معلمات التكوين اللازمة لمشروعك.

التالي ، والتسليم يأخذ أكثر من حيث تركت الصالة الرياضية ، من خلال توزيع ملف .IPA الخاص بك دون الحاجة إلى الذهاب من خلال Xcode. نظرًا لأن نظيره في صالة الألعاب الرياضية ، فإن العرض ليس فقط قادرًا على تسليم ملفك الثنائي .ipa ولكن أيضًا تحميل لقطات الشاشة والبيانات الوصفية إلى iTunes Connect من أجلك ، فضلاً عن إرسال تطبيقك إلى App Store.

يمكن لهذا الإجراء أيضًا تنزيل لقطات الشاشة والبيانات الوصفية الحالية من iTunes Connect. إن أبسط أمر تصرف هو الاتصال:

والنتيجة النهائية هي عبارة عن مجلد بيانات وصفية ومقاطع شاشة بالإضافة إلى ملف التهيئة Deliverfile ، وهو مشابه لـ Gymfile و Fastfile.

The metadata and screenshots subfolders generated for you by deliver

يمكنك بعد ذلك تعديل محتويات هذه المجلدات الفرعية لتعديل البيانات الوصفية للتطبيق. لتحميل البيانات الوصفية ، يتم تشغيل:

لإرسال تطبيقك للمراجعة ، أضف المعلمات التالية:

لتنزيل البيانات الوصفية أو لقطات الشاشة ، أضف المعلمات التالية ، على التوالي:

يمكنك تعديل لقطات الشاشة الخاصة بك داخل المجلد الفرعي / screenshots ، ولكن يوفر fastlane إجراء آخر يمكنه أتمتة عملية إنشاء لقطات الشاشة لك. على الرغم من أن لقطات الشاشة تقع خارج نطاق هذه المقالة ، يمكنك التعرف عليها في مقالة fastlane في المستقبل.

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

استنتاج

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

من خلال توليد لقطات موضعية إلى تكاملها العميق مع أدوات بارزة مثل Jenkins CI و Git و Crashlytics و HockeyApp و Slack ، يعد fastlane أساسيًا مثل CocoaPods لتطوير مجموعة أدوات iOS الخاصة بك. لديه مجتمع قوي من المكونات الإضافية لجهات خارجية ويتم دعمه أيضًا بواسطة Google.

يمكنك أيضًا التعرف على كل شيء عن فن العرض المتواصل والطابعة السريعة في كتابي Continuous Delivery for Mobile with fastlane ، المتوفر من Packt Publishing.

Continuous Delivery for Mobile With fastlane

وبينما أنت هنا ، تحقق من بعض مشاركاتنا الأخرى على تطوير تطبيقات iOS!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.