
يعد إصدار GitLab 12.3 لهذا الشهر مثيراً للاهتمام بشكل خاص بعد أسبوع كبير عقدنا فيه أول مؤتمر لمستخدمي GitLab في بروكلين ، نيويورك ، وأعلننا عن الانتهاء من مرحلة تمويل E-Series: جمعت 268 مليون دولار . باستخدام هذه الأموال ، يمكننا تحسين جميع عروضنا لـ DevOps ، بما في ذلك المراقبة والأمن والتخطيط.
جدار حماية تطبيق الويب
تتعرض تطبيقات الويب الحديثة لمخاطر جديدة من كل مكان ، بما في ذلك كل عميل متصل يرسل حركة المرور. يوفر جدار حماية تطبيق الويب (WAF) المراقبة والقواعد لحماية التطبيقات في بيئة الإنتاج. في GitLab 12.3 ، نقدم الإصدار الأول من جدار الحماية الخاص بتطبيق الويب المضمن في منصة GitLab SDLC. سيقوم بمراقبة والإبلاغ عن مشكلات الأمان لمجموعات Kubernetes. في الإصدارات المستقبلية ، سنقوم بتوسيع قدرات WAF بحيث يمكنها حظر حركة المرور الضارة ، وإنشاء وإدارة قواعد جدار الحماية ، وتلقي المعلومات في المراحل الأولى من التطوير لاتخاذ إجراءات وتقليل المخاطر.
تحليلات الإنتاجية الإصدار الأول
تحتاج الفرق المسؤولة عن تقديم البرنامج دائمًا إلى المعلومات والتحليلات الصحيحة لزيادة الإنتاجية والكفاءة. في كثير من الأحيان ، تؤدي الاختناقات غير الواضحة والفوضى إلى إبقائها في الانتظار وتضييع الوقت بدلاً من الاستفادة من الميزات الجديدة. بدءًا من الإصدار 12.3 ، نقدم ميزات تحليلية جديدة لمساعدة الفرق والقادة على فهم إنتاجية وفعالية المجموعات والمشاريع بشكل أفضل. تحليلات الإنتاجية تساعد الفرق وقادتها على إيجاد أفضل الطرق لزيادة الإنتاجية. مع التركيز في البداية على الوقت اللازم لدمج طلبات الدمج ، سيتيح لك GitLab دراسة البيانات بالتفصيل ومعرفة ما وكيف يمكن تحسينها. في العديد من المؤسسات ، يشارك المديرون في العديد من المشاريع ، وتوفر مساحة العمل التحليلية على مستوى المجموعة معلومات عن الإنتاجية والإنتاجية في العديد من المشروعات. هاتان الميزتان هما الأول في سلسلة كاملة من التحديثات التي تهدف إلى توفير المعلومات والتحليلات لزيادة الكفاءة.
تعزيز الامتثال
يمنح الامتثال للسياسات والإجراءات للمطورين الكثير من المشكلات. من الأسهل على العديد من مستخدمي GitLab فرض الالتزام عندما يعمل المطورون معًا في نفس التطبيق. GitLab 12.3 تطلق العديد من الميزات التي تبسط الإجراءات للحد من مخاطر الامتثال. دمج قواعد الموافقة على طلب تمنع دمج التعليمات البرمجية التي تقدم التراخيص غير المدعومة. إن طلب موافقة صاحب الرمز لكل فرع يساعد على حماية الفروع ، لأن صاحب الرمز يجب أن يوافق على جميع التغييرات.
وهذا ليس كل شيء!
يحتوي GitLab 12.3 على العديد من الميزات الرائعة لدرجة أنه من المستحيل التحدث عن الجميع (على الرغم من أنني أريد حقًا). عرض أكثر ملاءمة لمعلومات الموارد مع عرض عالمي للبيئات على مستوى المجموعة وعمليات نشر الكتلة ، واسترداد Git أكثر فاعلية من خلال روابط Git HTTP المضغوطة في Git ، وفحص ضغط المفاتيح الأكثر كفاءة للمناقشات التالية والحالية التي لم يتم حلها .
الموظف الأكثر قيمة هذا الشهر ( MVP ) - سيدريك تابين
من خلال جهود Cedric ، قدم GitLab 12.3 كلمة أساسية جديدة لوظيفة CI ، والتي تتيح عمليات بناء متقطعة . لقد عمل على هذه الميزة لأكثر من 9 أشهر وتعاون مع فرق التحقق الخاصة بنا لإدراجها في الإصدار.
شكرا جزيلا لك يا سيدريك على عملك الذي لا يقدر بثمن!
الميزات الرئيسية لجيتلاب 12.3
جدار حماية تطبيق ويب لـ Kubernetes Ingress
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
يضيف GitLab الآن المكون الإضافي لتعديل أمان جدار الحماية (WAF) إلى الكتلة عند تثبيت تطبيق Ingress على كتلة Kubernetes.
يحدد WAF ما إذا كانت حركة مرور HTTP أو HTTPS الواردة تحتوي على تعليمات برمجية ضارة ، مثل حقن SQL أو البرمجة النصية crossite أو أحصنة طروادة. لدى WAF بالفعل قواعد فعالة ، قواعد OWASP ModSecurity الأساسية (CRS) ، والتي تحدد أنواعًا مختلفة من الهجمات دون تكوين إضافي.
توضح الوثائق كيفية عرض سجلات WAF ومعرفة نوع حركة المرور الضارة التي يتعرض لها التطبيق في بيئة الإنتاج.
تحليلات الإنتاجية
قسط ، النهائي ، الفضة ، الذهب
يوجد الآن عدد قليل نسبياً من مصادر البيانات والتحليلات ، ويحتاج المديرون إلى هذه المعلومات لفهم إنتاجية الفريق والمشروع والمجموعة. كما قال بيتر دراكر ذات مرة: "ما يمكن قياسه يمكن تحسينه." وفقًا لهذا المبدأ ، نصدر الإصدار الأول من تحليلات الإنتاجية لمساعدة المديرين على فهم الأنماط النموذجية وإيجاد طرق أفضل لزيادة الإنتاجية الإجمالية. يركز هذا الإصدار على مقدار الوقت اللازم لدمج طلب دمج استنادًا إلى الحجم. يمكن للمستخدمين استخدام عوامل التصفية الحالية ودراسة الإدخالات التفصيلية وصولاً إلى مؤلف أو تسمية محددة في مجموعة داخل نطاق زمني محدد. في الإصدارات المستقبلية من Productivity Analytics ، سنضيف بيانات إضافية حتى نتمكن من العثور على التبعيات التي تزيد من وقت التطوير النشط أو التوقعات.
في هذا الإصدار الأول من تحليلات الإنتاجية ، لم نبدأ في جمع البيانات التاريخية للمقاييس الجديدة حتى لا تتداخل عملية الخلفية هذه مع الانتقال من 12.2 إلى 12.3. يمكنك متابعة المهمة التي نعمل عليها .

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

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

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

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

API لقواعد الموافقة على طلب الدمج
بداية ، PREMIUM ، ULTIMATE ، البرونز ، الفضة ، الذهب
تسمح لك قواعد الموافقة لطلبات الدمج بتحديد من يجب أن يشارك في مراجعة الكود - تقوم بتعيين الموافقين والحد الأدنى لعدد الموافقات. يتم عرض قواعد الموافقة في عنصر واجهة تعامل طلب الدمج ، لذلك من السهل رؤية المراجع التالي.
في GitLab 12.3 ، تمت إضافة دعم قواعد الموافقة إلى واجهة برمجة التطبيقات للمشاريع ودمج الطلبات.
اختصارات لوحة المفاتيح للمناقشة التالية والسابقة التي لم يتم حلها
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
يقع اختبار ومناقشة وحل التعليقات في قلب مراجعة كود GitLab. باستخدام زر الانتقال إلى المناقشة التالية التي لم يتم حلها ، يمكنك الانتقال بسهولة من المناقشة إلى المناقشة.
في GitLab 12.3 ، تسمح لك اختصارات لوحة المفاتيح الجديدة "n" و "p" بالانتقال إلى n ext (التالي) و p revious (السابقة) المناقشات التي لم تحل في طلبات الدمج لتسهيل رؤية التغييرات.

API تتطلب موافقة طلب الدمج من مالك الرمز في الفرع
قسط ، النهائي ، الفضة ، الذهب
تحد الموافقة على طلبات الدمج من إرسال الكود إلى الفروع الآمنة ، وهذا يسمح بتحسين جودة الكود وتنفيذ تدابير للتحكم في الامتثال. ولكن ليست كل طلبات الدمج مصممة للفروع المستقرة ، ولا تتطلب جميع الفروع الثابتة التحكم نفسه.
في GitLab 12.3 ، يمكنك طلب موافقة مالك الرمز على بعض الفروع (عبر واجهة برمجة التطبيقات) لمنع إرسال التغييرات إلى الملفات مباشرة أو دمج التغييرات دون موافقة مالك الرمز.
المذكرة. تتوفر هذه الميزة فقط من خلال واجهة برمجة التطبيقات في GitLab 12.3. في GitLab 12.4 ، سيكون متاحًا في إعدادات الفرع الآمن. اتبع الأخبار في المهمة 13251 .
كلمة "قواعد" مرنة للتحكم في سلوك خطوط الأنابيب
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
only/except
القواعد في خطوط الأنابيب يمكن أن تنطوي على إجراءات ضمنية مختلفة ، وكلما قمت بإضافتها ، زادت صعوبة فهم ما إذا كانت مهمة معينة سيتم تنفيذها في مواقف مختلفة. نقدم rules:
الجديدة rules:
بناء الجملة ، والتي سوف تبسط إلى حد كبير تنفيذ وفهم القواعد المعقدة. بناء الجملة هذا اختياري ويمكن أن يوجد في نفس خط الأنابيب ، ولكن ليس في نفس المهام ، مثل النهج الحالي only/except
.
فقط / باستثناء: external_pull_requests للمستودعات الخارجية
الأساسية ، بداية ، قسط ، النهائي ، الفضة ، الذهب
في GitLab CI ، يمكنك العمل مع مستودعات تخزين خارجية لاستخدامها في التحكم في الإصدار ، و GitLab لـ CI / CD. حتى الآن ، أظهر CI_PIPELINE_SOURCE
الدفع دائمًا ، لأنه كان يستند إلى مرآة pull
، وليس إلى مستودع خارجي أو مكتبة ويب. لذلك ، دعم GitLab بشكل غير صحيح only/except: merge_requests
. في الإصدار 12.3 ، أزلنا هذا القيد.
إزالة الصور الحاوية من CI / CD
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
يتيح GitLab Container Registry للمستخدمين جمع وإرسال الصور والعلامات إلى مشروع باستخدام GitLab CI / CD. يتم إجراء تغييرات على Container Container بواسطة حساب خدمة CI Registry User ، والذي يتم استدعاؤه من متغير البيئة المحدد مسبقًا .gitlab-ci.yml
CI_REGISTRY_USER
. في السابق ، كان بإمكان حساب الخدمة إرسال علامات جديدة إلى السجل ، لكنه يفتقر إلى أذونات لحذف هذه العلامات. منع هذا إزالة الصور المتعلقة بالفروع ، مما أدى إلى تكاليف تخزين إضافية والتنقل المعقد على واجهة التسجيل ، لأنه كان هناك الكثير من العلامات الإضافية.
في الإصدار 12.3 ، قمنا بتوسيع أذونات CI_REGISTRY_USER
وسمحنا لها بإزالة علامات الصور بحيث يمكن إزالة العلامات المرتبطة بالفرع كجزء من سير عمل CI / CD العادي واستخدام GitLab CI / CD لأتمتة برامج التنظيف. هذه المهمة جزء من ملحمة كبيرة لتقليل تكلفة حاوية التسجيل بفضل تحسين إدارة التخزين.

التحقق من المجال عند تشغيل مسح ضوئي نشط كامل
النهائي ، الذهب
يمكنك الآن التأكد من أن DAST تقوم فقط بتشغيل عمليات فحص المجال النشطة التي تم تكوينها خصيصًا لمسح DAST.
وبهذه الطريقة ، ستكون متأكدًا من أن عمليات مسح DAST النشطة لا يتم تنفيذها عن طريق الخطأ في المجالات التي توفر محتوى أو يتم استخدامها كعمل.
في مسح DAST السلبي ، لم يتغير شيء. لم يزعج أحدا.
تحديث محلل سبت باغز لجافا 11
النهائي ، الذهب
تم تحديث محلل SAST SpotBugs ويمكنه الآن مسح كود Java 11 إذا قمت بتعيين SAST_JAVA_VERSION
البيئة SAST_JAVA_VERSION
في المشروع.
خط أنابيب تشغيل زر خط أنابيب لطلبات الدمج
قسط ، النهائي ، الفضة ، الذهب
تلقت خطوط الأنابيب لطلبات الدمج مؤخرًا طريقة جديدة لبدء تشغيل خط أنابيب في سياق طلب دمج ، ولكن لا يمكنك استخدام الدفع إلا لهذا الغرض. في هذا الإصدار ، أضفنا زرًا يطلق خط أنابيب جديدًا ، وأصبحت إعادة تشغيل خطوط الأنابيب الفاشلة الآن أكثر سهولة.
تعريف المستخدم CI للمتغيرات لبناء عامل ميناء مع DevOps التلقائي
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
تتيح لك متغيرات CI تخصيص تنفيذ عمليات إنشاء التطبيق في خط أنابيب CI. بدءًا من GitLab 12.3 ، يمكن الوصول إلى المتغيرات المعرفة من قبل المستخدم في مرحلة docker build
في Auto DevOps. يتم توفير البيانات كقيمة build secret
جديدة.
قم بطباعة واحد أو أكثر من المتغيرات باستخدام AUTO_DEVOPS_BUILD_IMAGE_FORWARDED_CI_VARIABLES
، وسيكون متاحًا للاستخدام في docker build
.
Knative للمجموعات العنقودية والمثيل
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
تدعم مجموعات المجموعات والمثيلات الآن تثبيت Knative ، وهي منصة تعتمد على Kubernetes لنشر وإدارة الأحمال بدون خادم. بفضل هذا ، ستتمكن العديد من المشروعات من استخدام ميزات GitLab Serverless على نفس المجموعة.
المخططات الخطية للألواح المترية
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
غالبًا ما يريد المستخدمون اختيار نوع المخطط اعتمادًا على المقياس (على سبيل المثال ، مخطط خطي لوحدة المعالجة المركزية ، مخطط به مساحات على مساحة القرص). للقيام بذلك ، أضفنا المخططات الخطية لتحسين لوحة القيادة.

خطوات سريعة لإضافة وإزالة تكبير المواعيد في المهام
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
في حالات الطوارئ ، يكون التعاون المتزامن مهمًا جدًا. نعمل على تحسين عملية بدء المؤتمر وجذب جميع المتخصصين الضروريين من خلال دمج هذه الوظيفة مباشرة في المهمة باستخدام Zoom.
عندما يبدأ المستخدم اجتماع Zoom ، يمكنه إرفاقه بالمهمة بإجراء سريع عن طريق إدخال عنوان URL للاجتماع (على سبيل المثال ، /zoom https://gitlab.zoom.us/s/123456
). سيظهر زر به وصول مباشر إلى المكالمة الجماعية في أعلى المهمة. عند حل الحادث ، يمكن حذف اجتماع Zoom باستخدام /remove_zoom
.
هذه ميزة عامة على GitLab.com ، وفي حالات الإدارة الذاتية تحتاج إلى استخدام رمز التبديل. إذا كنت تريد استخدام هذه الميزة في مثيل GitLab مُدار ذاتيًا ، فيمكن للمشغلين تشغيل رمز التبديل الخاص بوظيفة issue_zoom_integration
. في إصدار GitLab 12.4 الشهر المقبل ، نخطط لإزالة رمز التبديل للوظائف وإتاحة دمج المهام مع Zoom للجمهور لجميع مستخدمي مثيلات الإدارة الذاتية.

Geo يُظهر الكمون للعقد الثانوية أثناء عملية الدفع عبر Git HTTP
PREMIUM ، النهائي
يمكن أن يكون الحصول على كميات كبيرة من البيانات مضيعة للوقت إذا كان المستخدم بعيدًا. تؤدي عملية النسخ المتماثل لمستودعات التخزين باستخدام Geo إلى تسريع عملية استنساخ المستودعات الكبيرة والحصول عليها ، حيث إنها تنشئ عقدًا ثانوية للقراءة فقط بجوار المستخدم البعيد. العقد الثانوية وراء الأساسي ، لذلك يظهر GitLab الآن تأخير النسخ المتماثل تقريبي عند استخدام git push
over HTTP. يحصل المستخدمون على مزيد من المعلومات عند استخدام عقدة Geo ، وقد يلاحظون زيادة في التأخير ويبلغوا بها إلى مسؤولي النظام.
نظرًا لقيود البروتوكول ، لا تتوفر هذه الرسالة عند استخدام git pull
.
تعطيل المصادقة الثنائية لبعض موفري OAuth
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
إذا كانت المنظمة تستخدم مصادقة إلزامية ثنائية العامل ومزود هوية يستخدم أيضًا 2FA ، فقد يكون المستخدمون غير راضين عن المصادقة المزدوجة. بفضل مساهمة المجتمع ، يمكنك الآن تعطيل 2FA لبعض موفري OAuth في GitLab. لذا فإن المؤسسات التي تستخدم موفري خدمات 2FA ستكون أكثر ملاءمة لتسجيل الدخول إلى GitLab.
شكرا للمساهمة ، dodocat !
تقييد IP يدعم شبكات متعددة
النهائي ، الذهب
كجزء من تطوير وظيفة تقييد إجراءات المجموعة حسب عنوان IP ، يوفر GitLab 12.3 القدرة على تحديد شبكات IP متعددة. يعد هذا مناسبًا جدًا للمؤسسات الموزعة جغرافيًا: بدلاً من تحديد نطاق واحد يمنح الكثير من الأذونات ، يمكن للمؤسسات الكبيرة الآن الحد من عدد الزيارات الواردة وفقًا لاحتياجات محددة.
GitLab Runner 12.3
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
اليوم أصدرنا GitLab Runner 12.3! GitLab Runner هو مشروع مفتوح المصدر ،
الذي يستخدم لتشغيل وظائف CI / CD وإرسال النتائج مرة أخرى إلى GitLab.
التغييرات:
يمكن العثور على قائمة كاملة بالتغييرات في سجل تغيير GitLab Runner: CHANGELOG .
تحسينات الأداء
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
نواصل تحسين أداء GitLab مع كل إصدار لحالات GitLab من أي حجم.
بعض التحسينات في GitLab 12.3:
حالة وعدد المناقشات في إدارة التصميم
قسط ، النهائي ، الفضة ، الذهب
في GitLab 12.2 ، قدمنا الإصدار الأول من إدارة التصميم ، والذي يسمح لك بتحميل التصاميم مباشرة في المهام. تم تحميلها في علامة تبويب منفصلة في المهام ، والإجراءات في كل إصدار من التصميم كانت غير مفهومة للمستخدمين. الآن ، عند تحميل التصميمات ، تتم إضافة رموز الحالة إلى كل إصدار يميز التصميمات الجديدة عن تلك القديمة. أضفنا أيضًا عددًا من المناقشات إلى التصاميم لإعطاء مزيد من المعلومات للمستخدمين. يسرنا أن هذه الإضافات إلى Design Management ستحسن التعاون والمناقشات حول GitLab للمصممين والمهندسين.

Git HTTP Link ضغط الإعلان
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
عند استلام التغييرات في مستودع Git ، يسرد خادم Git جميع الفروع والعلامات في المستودع. هذا هو إعلان الارتباط ما يسمى ، والذي يمكن أن يزن العديد من ميغابايت إذا كان المشروع كبيرًا.
في GitLab 12.3 ، عند الاستلام عبر HTTP ، سيتم ضغط إعلانات الارتباط للعملاء المدعومين من أجل تقليل كمية البيانات المرسلة وتسريع عمليات الاستلام.
في أيام الأسبوع المعتادة ، يعالج GitLab.com حوالي 850 جيجابايت من إعلانات ارتباط HTTP. بعد تمكين ضغط الارتباط ، تم تقليل هذا الحجم بحوالي 70٪.

سجلات تدقيق أحداث Git Push (تجريبية)
بداية ، PREMIUM ، ULTIMATE ، البرونز ، الفضة ، الذهب
يمكن إعادة كتابة محفوظات Git لتغيير الالتزامات والمؤلفين والطوابع الزمنية وترك مطوري المستقبل قصة نظيفة ومفهومة. ولكن للتدقيق هذه مشكلة.
في GitLab 12.3 ، يمكن إضافة أحداث Git push التي ترسل أوامر أو إعادة كتابة المحفوظات أو تغيير المستودع بطريقة أخرى إلى سجل التدقيق. يتم تعطيل سجلات التدقيق لأحداث الدفع بشكل افتراضي حتى لا تضر بالأداء في مثيلات GitLab بسبب ارتفاع حركة مرور Git للكتابة.
في الإصدار التالي ، سيتم تمكين سجلات تدقيق أحداث Git push افتراضيًا. ترقبوا الأخبار في المهمة 7865 .
الافتراضي أكثر ذكاء يرتكب في IDE ويب
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
في السابق ، تم اختيار الالتزام بالفرع الحالي افتراضيًا في Web IDE. ولكن في هذه الحالة ، يمكن للمستخدمين الذين لديهم أذونات إرسال التغييرات عن طريق الخطأ إلى الرئيسي أو الفروع الأخرى المحمية. الآن ، عند إجراء تغييرات على Web IDE ، لا تسمح خيارات الالتزام الافتراضية بإرسال التغييرات إلى الفرع الخطأ. تمنع خيارات الالتزام الأذكى الإرسال غير المقصود إلى المعالج والفروع الآمنة للمستخدمين الذين لديهم أذونات الكتابة. إذا لم يكن لدى المستخدم إذن بالكتابة ، يتم تقديم معلومات حول سبب عدم توفر الخيارات. بالإضافة إلى ذلك ، يلزم دعم خيارات الالتزام الجديدة الفروع غير الافتراضية مع أو بدون طلب دمج موجود.

أوقات انتظار مختلفة للوظائف في خطوط أنابيب CI / CD
الأساسية ، بداية ، قسط ، النهائي
للمهام المختلفة خصائص تنفيذ مختلفة ، لذلك قد يختلف وقت الانتظار أيضًا. يمكنك تكوين timeout:
تحديد timeout:
الكلمة الرئيسية في الوظيفة في .gitlab-ci.yml
ورقم يشير إلى عدد الدقائق التي تحتاج إلى الانتظار قبل تعطل المهمة.
شكرا للمساهمة ، Michal Siwek !
تشير الكلمة الأساسية القابلة للإنقطاع إلى ما إذا كان يمكن إلغاء المهمة بأمان.
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
باستخدام الكلمة الأساسية الجديدة interruptible
، يمكنك تحديد ما إذا كان ينبغي إلغاء المهمة إذا لم تعد هناك حاجة إليها بعد بداية جديدة لنفس المهمة. بشكل افتراضي ، الكلمة الأساسية false
ويمكن استخدامها للمهام التي يمكن إيقافها بأمان. لا يمكن تحديد هذه القيمة إلا في حالة تمكين إلغاء خطوط الأنابيب التلقائية غير الضرورية .
هذا يتجنب ازدواجية المهام غير الضرورية في خطوط الأنابيب ، ويقلل من التكاليف ويحسن كفاءة خطوط الأنابيب.
نظرًا لوجود خطأ في Runner ، لا تتوقف بعض البرامج المنفذة عن تشغيل المهام بعد الإلغاء. نحن نخطط لإصلاح هذا في 12.4.
تحقق من حالة مشغلات خطوط الأنابيب
قسط ، النهائي ، الفضة ، الذهب
لقد قمنا مؤخرًا بتحسين الطريقة التي تطلق بها خطوط الأنابيب في المشروعات المختلفة بعضها البعض ، ولكن كان أحدها مفقودًا - يجب أن ينتظر خط أنابيب التشغيل أو يؤكد إكمال خط الأنابيب التالي بنجاح. كان من الممكن القيام بذلك من خلال استطلاع API ، ولكن في هذا الإصدار ، قدمنا استراتيجيات depend
wait
لحل هذه المشكلة تلقائيًا. إذا حددت ، فسينتظر خط الأنابيب السابق حتى يكتمل خط الأنابيب هذا ويتحقق من نجاحه قبل إكمال مهمة الإطلاق. إذا قمت بتحديد " wait
، فسوف ينتظر خط الأنابيب الإكمال ، ولكنه سيستمر في عمل ما يخصه حتى في حالة حدوث عطل.
واجهة برمجة تطبيقات نقطة النهاية لإخراج علامات / صور مجموعة Docker
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
باستخدام GitLab Container Registry ، يمكنك جمع وإرسال علامات / صور Docker للمشاريع من سطر الأوامر أو CI / CD أو API. ولكن قبل إصدار GitLab 12.3 ، لم نوفر معلومات حول العلامات والصور على مستوى المجموعة ، على الرغم من أن المستخدمين يسألون عنها غالبًا.
لقد أضفنا نقطتي النهاية لواجهة برمجة التطبيقات والتي ستظهر الصور والعلامات الموجودة على مستوى المجموعة. هذه هي الخطوة الأولى في تحسين رؤية سجل الحاويات والبحث فيه. بعد ذلك ، نستخدم واجهة برمجة التطبيقات لإنشاء مستعرض على مستوى المجموعة في واجهة مستخدم Container Container.
مسح SAST دون عامل الميناء في
النهائي ، الذهب
يمكن إجراء فحص SAST اختياريًا دون Docker-in-Docker.
وهذا يعني أنه يمكنك تكوين مسح SAST بحيث لا يتطلب امتيازات مرتفعة.
تحرير أسباب تجاهل الثغرة الأمنية
النهائي ، الذهب
يمكن الآن حذف أسباب تجاهل الثغرة الأمنية وحذفها.
بهذه الطريقة يمكنك إضافة وتغيير سياق مشكلة عدم الحصانة إذا كان لديك المزيد من المعلومات.

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

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

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

يدعم Geo أصلاً النسخ المتماثل Docker Registry
PREMIUM ، النهائي
يدعم Geo أصلاً النسخ المتماثل Docker Registry بين العقد الجغرافية الأساسية والثانوية. يمكن لمستخدمي Geo الآن استخدام Docker Registry في أقرب موقع ثانوي. هذا النهج لا يأخذ في الاعتبار التخزين ويمكن استخدامه لتخزين الكائنات ، على سبيل المثال S3 ، أو التخزين المحلي.
عند استخدام تخزين العنصر الموزع (على سبيل المثال ، S3) لتسجيل Docker ، يمكن أن تستخدم العقدتان الجغرافية الأولية والثانوية نفس نوع التخزين. لا يستخدم هذا الأسلوب النسخ المتماثل Geo الأصلي.
يتم تضمين إجراءات API في تقييد عنوان IP للمجموعة
النهائي ، الذهب
يقدم GitLab 12.0 قيودًا على إجراءات المجموعة حسب عنوان IP . لقد طورنا هذه الميزة وأدرجنا إجراءات من خلال واجهة برمجة التطبيقات فيها. سيتم الآن رفض الطلبات الواردة إذا لم تستوفِ حد المجموعة. هذا يحل مشكلة مهمة للشركات ذات المتطلبات الصارمة ونهج متقدم للتحكم في الوصول ، حيث يتم أخذ الإجراءات في واجهة المستخدم وعبر واجهة برمجة التطبيقات في الاعتبار هنا.
السنانير النظام لتحديث أعضاء المشروع والمجموعات
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
توفر خطافات النظام فرصًا كبيرة للتشغيل الآلي عن طريق تشغيل الطلبات نتيجة للأحداث المختلفة على GitLab. بفضل مدخلات المجتمع ، يتم الآن دعم التغييرات في أعضاء المشروع ومجموعاته في روابط النظام. هذه إضافة رائعة لأولئك الذين يحتاجون إلى مستوى جديد من الإشراف والأتمتة لتغيير المشاركين.
شكرا على المدخلات الخاصة بك ، براندون ويليامز!
توقيع البريد الإلكتروني مع S / MIME
الأساسية ، بداية ، قسط ، النهائي ، مجانا ، البرونز ، الفضة ، الذهب
يمكن الآن توقيع إشعارات بريد GitLab مع S / MIME لمزيد من الأمان على مستوى المثيل.
شكرًا للمساهمة ، Siemens و @ Bufferoverflow و @ Dlouzan !
تحسينات شاملة
الأساسية ، بداية ، قسط ، النهائي
إهمال الميزات
.gitlab-ci.yml
, , GitLab 12.3
.gitlab-ci.yml, DEP_SCAN_DISABLE_REMOTE_CHECKS DS_DISABLE_REMOTE_CHECKS
, — .
, .
GitLab 12.0 .
: GitLab 12.3
gitlab-monitor gitlab-exporter.
GitLab Monitor, gitlab-monitor gitlab-exporter. gitlab-exporter — - Prometheus, GitLab, GitLab Monitor , GitLab. Omnibus, gitlab.rb .
: 22 2019 .
.
GitLab 10.0 , . , , .
, GitLab 12.5.
, .
: 22 2019 .