
Andrew Hanna
Serpent Team

لقد تجاوزت change sets. طبقت pipelines وversion control وربما إعداد CI/CD كاملا عبر أدوات مثل Copado أو Gearset. ومع ذلك، ما زال كل إصدار يبدو هشا: metadata تنكسر، وsandboxes تنحرف، و“يوم النشر” ما زال يعني مستخدمين معطلين وليالي طويلة.
هذه هي مفارقة Salesforce DevOps الحديثة:
رغم الأتمتة، لم تلحق الموثوقية بالسرعة.
تغيرت الأدوات، لكن
مشكلات workflow بقيت.
تبدو بيئاتك متوافقة، إلى أن تحاول النشر.
نادرا ما تعود hotfixes وتعديلات
الصلاحيات وتغييرات admins إلى Git.
هذا drift المخفي بين sandboxes والإنتاج هو ما
يكسر الإصدار التالي.
تدفع معظم أدوات DevOps الmetadata إلى الأمام دون التحقق مما اختلف.
ومع الوقت تصبح
البيئات لقطات منفصلة من الواقع: أسماء متشابهة، حالات مختلفة.
تتحرك pipelines بسرعة، لكن ليس دائما بذكاء.
عندما تعمل builds دون روابط واضحة إلى
stories أو منطق الأعمال، فأنت تنشر في الظلام.
الأتمتة دون سياق لا تمنع الخطأ البشري، بل توسّعه.
تنجح jobs بينما تفشل
الاعتماديات بصمت، فتبدأ الفرق بملاحقة المكونات المكسورة بعد ذلك.
حل version control تتبع التاريخ، لا التنسيق بين الأدوار.
يرسل المطورون commits
إلى Git، بينما ما زال admins وtesters يعملون مباشرة داخل orgs.
دون two-way sync،
يصبح Git سجلا جزئيا، لا source of truth حقيقيا.
تنتهي الفرق بتصحيح ليس الكود، بل نسخة من الorg التي نشروا منها.
يعتمد تسليم Salesforce على عدة أدوار: developers وadmins وtesters وrelease leads.
لكن
معظم الأدوات تتعامل معهم كمستخدمين منفصلين، لا كworkflow واحد.
غالبا ما يقفز العمل بين spreadsheets وJira وSlack وCI jobs.
هذا التنسيق اليدوي
يعني:
Stories تحمل حالة “Done” قبل merge
Commits بلا تغطية اختبار
إصدارات يتم تنسيقها في chat threads
المشكلة ليست نقص الأتمتة، بل نقص السياق المتصل.
صممت منصات DevOps القديمة للتحكم، لا للوضوح.
بدلا من تبسيط release management،
أضافت طبقات إعداد وموافقات يدوية وتسلسلات صلاحيات، مما حول DevOps إلى نظام آخر يجب على
الفرق صيانته.
تتفوق هذه الأدوات في تنفيذ pipelines، لكنها لا تتفوق في
مواءمة الأشخاص والبيئات.
تركز على تنفيذ النشر، لا على
استمرارية workflow.
لهذا تنتهي حتى الإعدادات المنضبطة بمواجهة أخطاء
rollback واعتماديات مكسورة وmetadata غير متسقة.
الجيل الجديد من فرق Salesforce يتجه نحو DevOps قائم على المهام، حيث ترتبط كل تغييرات مباشرة بuser story والمطور وtarget org.
بدلا من تتبع الملفات، تتبع وحدات العمل:
كل تغيير يعرف لماذا يوجد.
كل org تبقى متوافقة تلقائيا.
كل deployment قابل للتتبع من المهمة إلى الإنتاج.
يربط هذا النهج ما لم تستطع الأدوات القديمة ربطه: السياق بين Git والمهام وorgs.
الأمر
لا يتعلق باستبدال pipelines، بل بجعلها واعية بما تنشره فعلا.
بُني Serpent حول هذا التحول.
تربط
واجهة المستخدم القائمة على المهام وتكامل GitFlow
بين user stories والmetadata وorgs في تدفق واحد مستمر، بحيث يعكس كل deployment العمل
الحقيقي المنجز، لا الافتراضات.
تبلغ الفرق التي تستخدم Serpent عن دورات إصدار أسرع حتى 80% مع أحداث rollback أقل ووضوح كامل من story إلى deployment.
قارن البيئات وزامنها باستمرار.
يجب أن يطلق drift تنبيهات، لا أن يُكتشف في منتصف
النشر.
يجب تتبع العمل بالسياق، لا بالمكون.
إذا لم يرتبط التغيير بمهمة، فلا يجب شحنه.
يجب أن تكون تحليلات ما بعد النشر وأدوات rollback جزءا من workflow القياسي، لا بروتوكولات طوارئ.
تأتي معظم حالات فشل إصدارات Salesforce من عدم توافق workflow، لا من نقص الأدوات.
عندما
تبقى الفرق والمهام وorgs متزامنة، تأتي الموثوقية.
هذا ما يقدمه Serpent: DevOps واع بسير العمل، قائم على السياق، وقابل للقياس.

Andrew Hanna

Serpent Team

Tekunda Team

Tekunda Team

Tekunda Team

Andrew Hanna