Попълване на имейл адреси на потребители на CruiseControl от файл

Понастоящем моят имейл издател на CruiseControl.NET има свой списък с потребители, твърдо кодиран в конфигурационния файл за изграждане

<publishers>
    [ ... ]
    <email from="[email protected]" mailhost="stmp.domain.com" mailport="25" includeDetails="TRUE">
        <replyto>[email protected]</replyto>
        <users>
            <user name="a.user" group="buildmaster" address="[email protected]"/>
            <user name="b.user" group="developers" address="[email protected]"/>
        </users>
        <groups>
            <group name="developers">
                <notifications>
                    <notificationType>Failed</notificationType>
                    <notificationType>Fixed</notificationType>
                </notifications>
            </group>
            <group name="buildmaster">
                <notifications>
                    <notificationType>Always</notificationType>
                </notifications>
            </group>
        </groups>
        <modifierNotificationTypes>
            <NotificationType>Failed</NotificationType>
            <NotificationType>Fixed</NotificationType>
        </modifierNotificationTypes>
    </email>
</publishers>

Бих искал да мога да чета списъка с потребители от външен файл. Имаме десетки компилационни файлове и бих искал да рационализирам процеса на добавяне на нови потребители и премахване на такива, които вече не се интересуват.

Мога ли да направя това?


person Unsliced    schedule 07.09.2012    source източник


Отговори (1)


Да – просто погледнете препроцесора за конфигурация, по-специално Включване раздел.

Можете да преместите вашия <users/> възел в отделен файл, наречен напр. email_users.xml и го поддържайте на едно място, след което просто го включете с <cb:include href="/bgemail_users.xml"/>

Примерен файл email_users.xml:

<?xml version="1.0" encoding="utf-8"?>
<cb:config-template xmlns:cb="urn:ccnet.config.builder"
  xmlns="http://thoughtworks.org/ccnet/1/5">
  <users>
    <user name="a.user" group="buildmaster" address="[email protected]"/>
    <user name="b.user" group="developers" address="[email protected]"/>
  </users>
</cb:config-template>

И не забравяйте, че за да работи това, вашият основен файл трябва да започне с

<cruisecontrol xmlns:cb="urn:ccnet.config.builder"
  xmlns="http://thoughtworks.org/ccnet/1/5"> 
person skolima    schedule 09.09.2012