سؤال

في المستقبل القريب، سأحصل على حوالي أسبوعين للتحرك وتحسين بيئة التطوير لدينا في العمل.

نقوم بشكل أساسي بتطوير مشروع PHP/MySQL كبير مع 2-10 مطورين.

في الوقت الحالي لدينا خادم تطوير واحد، يقوم بتشغيل Apache باستخدام mod_userdir، ولكل مطور مجلد /public_html في منزله (الذي يمكن الوصول إليه من خلال السامبا).بالنسبة لـ VCS وإدارة المشاريع/تتبع المشكلات، نستخدم Subversion وTrac.يستغرق الاختبار/النشر بعض الخطوات اليدوية، وليس الكثير من الأتمتة هناك.

تتضمن خططي للإعداد الجديد التغييرات التالية على العناصر الموجودة:

  • التكامل المستمر
  • قم بدمج CI في Trac، وقم بإنشاء/العثور على مكون إضافي يعرض بدء الإجراءات بعد نجاح أو فشل تقدم الإنشاء (على سبيل المثال.النشر إلى التدريج/البث المباشر)
  • إنشاء برامج نصية للنشر الآلي (نقرة واحدة)
  • دمج (دوكسيجين)-التوثيق في تقدم البناء وبطريقة أو بأخرى في تراك
  • يضيف الإصدار التلقائي
  • أضف طبقة أخرى من المراقبة (nagios المحلية التي تراقب نظام الإنتاج لدينا)
  • قم بإضافة MySQL Replication Slave الذي يتم تشغيله ليلاً، والذي يمكن للمطورين استخدامه بعد ذلك لاختبار الأشياء على بيانات التحديث
  • مراجعة الخطط الاحتياطية
  • قم بتوثيق كيف ولماذا قمت بإعداد كل شيء بهذه الطريقة

هل لديك أي نصائح/تلميحات ما الذي يمكن تحسينه بشكل أكبر؟هل هناك أي شيء يجب أن نفعله بطريقة مختلفة؟

هل كانت مفيدة؟

المحلول

أود أن أتأكد من كتابة البرامج النصية للنشر الآلي الخاصة بك بطريقة يمكن استخدامها بواسطة أداة التكامل المستمر الخاصة بك. هدسون (وأظن أن CruiseControl) يغلف هذه البرامج النصية بشكل أساسي ويوفر واجهة أمامية أنيقة.

Hundson سهل التثبيت ويأتي مع تراك البرنامج المساعد, وSVN وCVS ومكونات Git الإضافية و دوكسيجين البرنامج المساعد وغيرها لأي شيء تقريبا يمكنك التفكير فيه.تنبيه قضائي:لم أستخدم كل هذه المكونات الإضافية وقد لا تفعل ما تريده بالضبط ...

إذا كانت لديك ميزانية لبرنامج CI، فإن برنامج TeamCity يستحق البحث (أو أنك تستخدم عض?).

لديك فرصة عظيمة، حظا سعيدا جدا!

نصائح أخرى

اقتراحي الوحيد لن يكون قضاء الكثير من الوقت في

  • قم بتوثيق كيف ولماذا قمت بإعداد كل شيء بهذه الطريقة

هذا هو العنصر الأخير في قائمتي لتحسين بيئة التطوير لدينا وما زلت لم أفعل ذلك.

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

ربما أيضًا رسم تخطيطي كبير يوضح الروابط وأسماء الخوادم الفعلية ولكن بخلاف ذلك وجدت أن التوثيق يمثل مشكلة.

هتافات

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top