أرسل تكوين المجموعة في CC.NET باستخدام ملف التكوين واحد
-
05-07-2019 - |
سؤال
ولقد بدأت باستخدام CC.NET للتكامل مستمر وكما يبني عدد من المشاريع رصدها حتى أود تكوين تنبيه عبر البريد الإلكتروني عن طريق ملف التكوين واحد.
وما أعنيه بهذا هو الذي أود أن تكون هناك قائمة من المستخدمين في مجموعات مختلفة في ملف التكوين واحد التي يتم الرجوع إليها بواسطة ALL ملفات التكوين المشروع:
<user name="user1" group="buildmasters" address="user1@company.com"/>
<user name="user2" group="internalapplications" address="user2@company.com"/>
<user name="user3" group="internalapplications" address="user3@company.com"/>
<user name="user4" group="externalapplications" address="user4@company.com"/>
<user name="user5" group="externalapplications" address="user5@company.com"/>
وبعد ذلك ملف التكوين المشروع مرجع المجموعة الصحيحة:
<group name="internalapplications" notification="change"/>
وحتى بالنسبة للمشاريع المختلفة التي هي التطبيقات الداخلية وأود أن استيراد ملف التكوين واحد ثم تعيين مجموعة التطبيقات الداخلية. وأود أيضا أن أضيف buildmasters لكل شيء بحيث الآن أستطيع أن تتبع الناس إذا كانت تواجه مشاكل.
وهذا يعني أود أن يكون المستخدم في مجموعتين أو أكثر على سبيل المثال ولكن أنا لا أعرف ما إذا كان من الممكن:
<user name="user1" group="buildmaster, externalapplications" address="user1@company.com"/>
ولقد تم العمل في ظل افتراض أن يوم واحد يمكنني أن تكوين هذا ويكون مجرد ملف واحد مع كافة عناوين البريد الإلكتروني للمستخدمين في، ولكن اليوم لقد ذهب للقيام بذلك، ولست متأكدا من أنها تعمل مثل هذا.
ويمكن لأي شخص أن يصف كيف تعاملوا مع هذا؟
المحلول
وما تريد القيام به هو استخدام CC.Net تكوين قبل المعالج أ >
ولقد تقدمت email.config
<cb:define name="email-template" xmlns:cb="urn:ccnet.config.builder">
<email from="buildadmin@server.com" mailhost="server" includeDetails="TRUE"
mailhostUsername="buildadmin" mailhostPassword="pass">
<users>
<user name="dev" group="dev" address="dev@server.com"/>
</users>
<groups>
<group name="buildmaster" notification="always"/>
<group name="developers" notification="always"/>
</groups>
</email>
</cb:define>
ووتضمينه عند الحاجة ...
<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<cb:include href="C:\email.config" />
<project name="MyProject" queue="Build" queuePriority="1" >
<cb:email-template >
</cb:email-template>
</project>
<project name="MyProject2" queue="Build" queuePriority="1" >
<cb:email-template >
</cb:email-template>
</project>
</cruisecontrol>
نصائح أخرى
وماذا عن اتخاذ نهج مختلف قليلا.
وإدارة المجموعات من خلال خدمة البريد الإلكتروني وإرسال رسائل إلى الاسم المستعار المجموعة.
وبهذه الطريقة انها تافهة لديهم نفس المستخدمين في مجموعات مختلفة، بالإضافة إلى أنك يجب أن لا تحتاج إلى تغيير ملفات التكوين الخاصة بك إذا تغيير عضوية المجموعة.
والقيام بذلك مع Exchange من السهل جدا، لا أعرف عن أنظمة البريد الإلكتروني الأخرى.