في نهاية المقالة حول Angular مع معالجة إصدار Git Commit، تبقى لدينا أسئلة؟ ️ الآن دعونا نحدد المشكلة
وندمجها مع بناء Jenkins. هل يمكننا الحصول على معلومات البناء، مثل رقم البناء، وملئها؟ إلى الصفحة؟ [البرامج التعليمية الموصى بها: "Angular Tutorial"]
كما يلي:
اها، دعونا تعديله على أساس الأصلي.
أضف الملف build_info.json
إلى الدليل الجذر.
{ }
لقد قرأت ذلك بشكل صحيح، محتوى
build_info.json
هو{}
يتم إنشاء ملف build_info.json
عند إنشاء Jenkinsfile
.
أفكار التنفيذ المحددة هي كما يلي:
أثناء عملية البناء، قم بتنفيذ Jenkinsfile
لإنشاء ملف build_info.json
عند
تعبئة المشروع، فكر في الحصول على محتوى ملف build_info.json
لبيئات مختلفة
.لتسهيل العرض التوضيحي
البيئة هنا تأخذ بعين الاعتبار بيئة الإنتاج فقط
. الخطوات عبارة عن خطوتين بسيطتين، النقطة الأكثر أهمية هي كيفية كتابة محتوى ملف build_info.json
.
إذا لم تكن على دراية بالمحتوى المتعلق Jenkinsfile
، فيرجى قراءة المقالة حول الإنشاء التلقائي لمشاريع Node باستخدام Jenkins Pipeline وGitlab. في هذه المرحلة، ينصب تركيزك على محتوى مقالة Jenkinsfile
، كما يلي:
خط الأنابيب { وكيل أي أدوات { "عقدة" } { مراحل المرحلة ("التبعية") { {خطوات ش 'تثبيت npm' } } # لقد أضفنا مرحلة هنا، انظر أدناه؟ المرحلة ("البناء") { {خطوات sh 'npm تشغيل نظيف' sh 'npm تشغيل البناء' } } } }
لقد أضفنا stage
لإكمال كتابتنا لملف build_info.json
.
المرحلة ("الإصدار") { {خطوات البرنامج النصي { مواطنه أماب = 'build_number': BUILD_NUMBER، # رقم البناء 'job_name': JOB_NAME # اسم المهمة] # كتابة الملف writeJSON file: WORKSPACE+'build_info.json', json: amap # WORKSPACE root Directory} } }
نعم، الفكرة جيدة... أليس كذلك؟
لننتقل إلى الخطوة الثانية: قراءة محتوى build_info.json
، واعتراض محتوى جزء بيئة الإنتاج من version.js
:
// تقديم ملف build_info.json الذي تم إنشاؤه Let buildInfo = require ('./build_info.json'); إذا (config.env === 'الإنتاج') { // احصل على رقم إصدار الإصدار، وإلا احصل على الإصدار الافتراضي versionObj.version = buildInfo.build_number || config.version }
بعد إكمال الملف أعلاه، يمكنك نشره في البيئة ذات الصلة. إذا سارت الأمور على ما يرام، يمكنك رؤية رقم الإصدار ذي الصلة على الصفحة.
هذه المقالة ليست مرتبطة جدًا angular
، فهي تستخدم فقط للتعاون مع jenkins
. المقالة التالية تتحدث عن استخدام Angular
لتطوير spa
، لذا ترقبوا ذلك.
هذه المقالة مستنسخة من: https://juejin.cn/post/7081642981890981895
المؤلف: جيمي