ما هي Azure Artifacts؟
في هذه الوحدة، ستحصل على نظرة عامة مختصرة حول كيفية استخدام Azure Artifacts لإنشاء وإدارة الحزم التي يمكن لتطبيقاتك استهلاكها بشكل آمن.
دعونا نتحقق مرة أخرى مع الفريق حيث يقررون ما إذا كانت Azure Artifacts هي الطريقة المناسبة لاستضافة حزمة .NET الخاصة بهم.
مارا: يبدو لي أنه من المنطقي بالنسبة لنا استضافة حزمة النماذج الجديدة في Azure Artifacts. نحن جميعا جزء من مؤسسة Microsoft Azure DevOps بالفعل، لذلك ستكون المصادقة أسهل من محاولة إعدادها على مدير حزمة مختلف.
أندي: لقد نظرت في ذلك قبل الاجتماع ويبدو واضحا بالنسبة لي. أنا أتفق مع مارا.
أميتا: ما هي Azure Artifacts؟
أندي: Azure Artifacts هو مستودع في مؤسسة Azure DevOps حيث يمكنك إدارة التبعيات لقاعدة التعليمات البرمجية الخاصة بك. يمكن ل Azure Artifacts تخزين البيانات الاصطناعية والثنائيات الخاصة بك. يوفر حاوية، تسمى موجز، لمجموعات التبعيات. يمكن للمطورين الذين لديهم حق الوصول إلى الموجز استهلاك الحزم أو نشرها بسهولة.
كيف أعمل إنشاء حزمة واستخدامها في البنية الأساسية لبرنامج ربط العمليات التجارية؟
تيم: إذا كان ما فهمته صحيحًا، فإن تعليمة التطبيق البرمجية تستخدم حزمًا من NuGet بالفعل. سننشئ حزمتنا الخاصة ونستضيفها في Azure Artifacts. هل يمكنك رسم القطع وكيف ستعمل معا؟ أواجه صعوبة في تصور العملية بأكملها.
أندي: بالتأكيد. لننتقل إلى عملية إنشاء حزمة واستخدامها في البنية الأساسية لبرنامج ربط العمليات التجارية Azure DevOps.
ينتقل أندي إلى السبورة البيضاء.
إنشاء الحزمة
أولا، نحتاج إلى إنشاء مشروع في Azure Artifacts. يمكننا القيام بذلك من Azure DevOps.
بعد ذلك، نقوم بإنشاء مسار في Azure Pipelines يتصل بم repo GitHub للتعليمات البرمجية للحزمة. ثم يقوم المسار بإنشاء التعليمات البرمجية، وحزمها، ودفع الحزمة إلى Azure Artifacts.
نحتاج إلى تحديث التطبيق الذي يستهلك هذه الحزمة للإشارة إلى موجز Azure Artifacts الذي أنشأناه.
بعد ذلك، نقوم بتحديث البنية الأساسية لبرنامج ربط العمليات التجارية التي تنشئ تطبيقنا. يسمح لنا التحديث باستخدام موجز Azure Artifacts لسحب تبعية الحزمة الجديدة والبناء كالمعتاد.
تحديث الحزمة
تيم: ماذا لو قام شخص ما بتحديث الحزمة؟
أندي: عند تحديث الحزمة بميزة جديدة أو إصلاح الأخطاء وتشغيل الاختبارات للتأكد من أنها تعمل بشكل صحيح، قم بتصنيف رقم إصدار الحزمة. ثم قم بتثبيت التغيير. يرى مسار الحزمة التثبيت وينشئ أداة جديدة في Azure Artifacts برقم الإصدار الجديد. لا تقلق، لا تزال الحزمة القديمة ذات رقم الإصدار الأدنى موجودة للتطبيقات التي تعتمد على هذا الإصدار. هذا هو السبب في أنك لا تقوم عادة بإلغاء إدراج حزمة.
قد يرغب تطبيقنا في استخدام هذا الإصدار الأحدث من الحزمة. في هذه الحالة، نقوم بتحديث التطبيق للإشارة إلى الإصدار الأحدث وتشغيل الاختبارات محليا للتأكد من أن هذا الإصدار الجديد يعمل مع تطبيقنا. عندما نكون راضين عن عمل كل شيء، نقوم بإرسال تغيير التطبيق إلى البنية الأساسية لبرنامج ربط العمليات التجارية. فإنه يبني مع الإصدار الجديد من تبعية الحزمة.
أميتا: تبدو هذه خطة جيدة، وسوف تساعد الفريق الآخر أيضا. كما أنه سيحافظ على التعليمات البرمجية من الانجراف، كما وضعتها. وهذا سيساعد سؤالجواب أيضا.
قم بتضمين استراتيجية تعيين الإصدار في البنية الأساسية لبرنامج ربط العمليات التجارية للبناء الخاصة بك
عند استخدام البنية الأساسية لبرنامج ربط العمليات التجارية للبناء، تحتاج الحزم إلى إصدارات قبل أن يمكن استهلاكها واختبارها. ومع ذلك، فقط بعد اختبار الحزمة يمكنك معرفة جودتها. نظرا لأنه لا ينبغي تغيير إصدارات الحزمة أبدا، يصبح من الصعب اختيار إصدار معين مسبقا.
يربط Azure Artifacts مستوى الجودة بكل حزمة في موجزاتها، ويميز بين الإصدارات التجريبية والإصدارات. تقدم Azure Artifacts طرق عرض مختلفة على قائمة الحزم وإصداراتها، والتي تفصلها بناء على مستوى جودتها. يعمل هذا النهج بشكل جيد مع الإصدار الدلالي، وهو أمر مفيد للتنبؤ بهدف إصدار معين. تستخدم Azure Artifacts أيضا واصفا لتضمين بيانات تعريف إضافية من موجز Azure Artifacts. الاستخدام الشائع لطرق العرض هو مشاركة إصدارات الحزمة التي تم اختبارها أو التحقق من صحتها أو توزيعها، ولكنها لا تزال قيد التطوير وليست جاهزة للاستهلاك العام.
تحتوي الموجزات في Azure Artifacts على ثلاث طرق عرض مختلفة بشكل افتراضي. تتم إضافة طرق العرض هذه في لحظة إنشاء موجز جديد. طرق العرض الثلاث هي:
- الإصدار: @release تحتوي طريقة العرض على جميع الحزم التي تعتبر إصدارات رسمية.
- الإصدار التجريبي: @prerelease تحتوي طريقة العرض على جميع الحزم التي تحتوي على تسمية في رقم إصدارها.
- محلي: @local تحتوي طريقة العرض على جميع حزم الإصدار والإصدار التجريبي والحزم التي تم تنزيلها من مصادر المصدر.
يمكنك استخدام طرق العرض لمساعدة مستهلكي تغذية الحزم على التصفية بين الإصدارات التي تم إصدارها وغير الصادرة من الحزم. بشكل أساسي، تسمح طرق العرض للمستهلك لاتخاذ قرار واع للاختيار من بين الحزم التي تم إصدارها، أو الاشتراك في الإصدارات التجريبية لمستوى جودة معين.
أمان الحزمة في Azure Artifacts
ضمان أمان الحزم الخاصة بك لا يقل أهمية عن ضمان أمان بقية التعليمات البرمجية الخاصة بك. أحد جوانب أمان الحزمة هو تأمين الوصول إلى موجزات الحزمة (حيث يكون الموجز، في Azure Artifacts، هو المكان الذي تخزن فيه الحزم). يسمح لك تعيين الأذونات على الموجز بمشاركة الحزم الخاصة بك مع عدد من الأشخاص أو عدد قليل من الأشخاص كما يتطلب السيناريو الخاص بك.
أذونات الموجزات
تحتوي الموجزات على أربعة مستويات من الوصول: المالكون والمساهمون والمتعاونون والقراء. يحتوي كل مستوى من مستويات الوصول على مجموعة معينة من الأذونات. على سبيل المثال، يمكن للمالكين إضافة أي نوع من الهوية - الأفراد والفرق والمجموعات - إلى أي مستوى وصول. بشكل افتراضي، خدمة إنشاء مجموعة المشاريع هي متعاون وفريق المشروع هو قارئ.
تكوين البنية الأساسية لبرنامج ربط العمليات التجارية للوصول إلى تصنيفات الأمان والترخيص
هناك العديد من الأدوات المتاحة من جهات خارجية لمساعدتك في تقييم الأمان وتصنيف الترخيص لحزم البرامج التي تستخدمها.
تقوم بعض هذه الأدوات بفحص الحزم حيث يتم تضمينها في البنية الأساسية للبناء أو التكامل المستمر. أثناء عملية الإنشاء، تقوم الأداة بمسح الحزم ضوئيا وتقديم ملاحظات فورية. أثناء عملية القرص المضغوط، تستخدم الأداة البيانات الاصطناعية للبناء وتنفذ عمليات الفحص. مثالان على هذه الأدوات هما Mend Bolt و Black Duck. باستخدام Azure DevOps، يمكنك استخدام مهام الإنشاء لدمج المسح الضوئي في البنية الأساسية لبرنامج ربط العمليات التجارية الخاصة بك.