
Andrew Hanna

Andrew Hanna

تقلّص دورة إصدار Salesforce من أسابيع إلى ساعات عبر وضع البيانات الوصفية في Git، وأتمتة خطوات البناء والاختبار في خط CI، وشحن تغييرات صغيرة كثيرًا بدل دفعة شهرية كبيرة واحدة. الاختناق تقريبًا ليس المنصة أبدًا. إنه مجموعات التغيير اليدوية، والاختبارات التي تُشغَّل يدويًا، ويوم إصدار يحشر شهرًا من المخاطر في نافذة واحدة. أزل هذه الثلاثة وتصبح الساعات واقعية.
لأن معظم المؤسسات ما زالت تنقل البيانات الوصفية يدويًا. تُجمَّع مجموعات التغيير مكوّنًا مكوّنًا، وتنحرف بيئات الاختبار عن التزامن، وتُشغَّل الاختبارات يدويًا في الليلة السابقة، ويُشحَن كل شيء في دفعة شهرية. كل واحدة من هذه طابور، والطوابير تتراكم. عندما يحطّ شهر من العمل في نافذة واحدة، يمكن لمكوّن سيّئ واحد أن يعيد الإصدار بأكمله، فيبطّن الفريق الجدول بمزيد من المراجعة اليدوية، مما يطيل الدورة أكثر. البطء عملية، وليس Salesforce.
أربع روافع تنجز معظم العمل. تقريبًا حسب ترتيب الأثر:
هذه يعزّز بعضها بعضًا. Git يجعل CI ممكنًا، وCI يجعل الاختبار الآلي رخيصًا، والاختبار الرخيص يجعل الدفعات الصغيرة آمنة. تصل أفضل ممارسات DevOps المنشورة من Salesforce إلى القائمة القصيرة نفسها: التحكم بالإصدارات، والأتمتة، والإصدارات المتكررة.
وللاطلاع على الترحيل مؤسسةً تلو الأخرى خلف هذه الخطوات، انظر From Change Sets to Continuous Delivery: SF DevOps Playbook.
قِسه بمقاييس DORA الأربعة، المعيار الصناعي لأداء التسليم: تكرار النشر، وزمن التمهيد للتغييرات، ومعدل فشل التغيير، ومتوسط زمن التعافي. كلما أتمتت، يرتفع تكرار النشر ويهبط زمن التمهيد، وإن أحسنت العمل يبقى معدل فشل التغيير ثابتًا أو يتحسّن لأن الدفعات الصغيرة المختبَرة تفشل أقل.
يمكنك تجميع هذا بـ Salesforce CLI وGit ومشغّل CI عام، وكثير من الفرق القوية تفعل ذلك. لكن منصة DevOps مبنية خصيصًا لـ Salesforce تعالج الألم الخاص بالمنصة الذي تتجاهله الأدوات العامة: تبعيات البيانات الوصفية، وفروق الملفات الشخصية والصلاحيات، والتغييرات المدمِّرة، وبذر البيانات بين بيئات الاختبار. الفئة صحّية وتستحق تقييمًا منصفًا، مع خيارات مثل Copado وGearset وSalto وAutoRABIT وFlosum وBlue Canvas، لكل منها زاويته. Serpent ينتمي هنا أيضًا، مبنيًا لجعل خط الأنابيب القائم على التحكم بالمصدر أعلاه هو المسار الافتراضي بدل مشروع تبنيه يدويًا. اختر تلك التي يناسب سير عملها طريقة تفكير فريقك أصلًا؛ الأداة أقل أهمية بكثير من الالتزام بالروافع الأربع.
هل يمكن فعلًا أن ينتقل نشر Salesforce من أسابيع إلى ساعات؟
نعم. المكسب يأتي من إزالة الخطوات اليدوية، لا من المنصة ذاتها. بمجرد أن تعيش البيانات الوصفية في Git ويشغّل CI الاختبارات، تنكمش نافذة الإصدار إلى طول خط الأنابيب.
ما أكبر رافعة منفردة؟
التحكم بالمصدر. بمجرد أن يصبح كل تغيير commit متتبَّعًا بفرق وتاريخ، يصبح التكامل المستمر والاختبار الآلي ممكنين، وهذان ينجزان معظم التسريع المتبقي.
هل مجموعات التغيير هي المشكلة؟
هي جزء كبير منها. مجموعات التغيير يدوية وصعبة التدقيق ولا تقدّم فرقًا ولا تراجعًا، مما يفرض مراجعة بشرية بطيئة. الانتقال إلى خط أنابيب قائم على Git يزيل ذلك الاختناق.
كيف أقيس أداء الإصدار؟
تابع مقاييس DORA الأربعة: تكرار النشر، وزمن التمهيد للتغييرات، ومعدل فشل التغيير، ومتوسط زمن التعافي. تُظهر ما إذا كانت الإصدارات الأسرع أيضًا أكثر أمانًا.
هل يجعل الشحن الأكثر تكرارًا الإصدارات أكثر خطورة؟
عادةً العكس. الدفعات الأصغر تغيّر أقل في المرة الواحدة، فيصبح كل نشر أسهل اختبارًا وتراجعًا، مما يخفض معدل فشل التغيير حتى مع ارتفاع التكرار.
بدون التزام.