Как настроить проверку интервала cc.net, чтобы игнорировать изменения в подпапке svn? - PullRequest
1 голос
/ 09 ноября 2009

У нас есть непрерывная настройка сборки нашего репозитория SVN с использованием cc.net. В сундуке есть подпапка с названием «Корзина». После успешной сборки мы копируем все наши библиотеки DLL в папку bin и регистрируем ее. Это вызывает бесконечный цикл сборки, поскольку изменения папки bin представляют собой изменение, и это запускает триггерный интервал для запуска другой сборки.

Есть ли какая-либо настройка на стороне cc.net, которую мы можем настроить, чтобы cc.net игнорировал изменения в папке bin?

ТИА бараны

Ответы [ 2 ]

3 голосов
/ 13 ноября 2009

Понял это на основе ответа на связанный вопрос.

Вам необходимо использовать «отфильтрованный» узел sourcecontrol в вашем файле ccnet.config. Вот образец. Обратите внимание на использование узла exclusionFilters для исключения изменений в файлах в папке

<sourcecontrol type="filtered">
    <sourceControlProvider type="svn" autoGetSource="true">
        <trunkUrl>https://servername/ProjectName/trunk</trunkUrl>
        <workingDirectory>C:\ProjectName\Source</workingDirectory>
        <executable>C:\Program Files\svn\svn.exe</executable>
        <username>uname</username>
        <password>pwd</password>
        <timeout units="minutes">300</timeout>
    </sourceControlProvider>
    <exclusionFilters>
        <pathFilter>
            <pattern>/trunk/bin/*.*</pattern>
        </pathFilter>
    </exclusionFilters>
</sourcecontrol>

НТН

0 голосов
/ 10 ноября 2009

Я никогда не использовал cruisecontrol.net, но в cruisecontrol мы используем задачу «modifyset», чтобы указать только папки, изменения которых должны опрашиваться сборкой с непрерывной интеграцией. Я не знаю, есть ли эквивалент в cc.net, хотя.

Но если вам действительно нужно, чтобы DLLS был включен в систему контроля версий, вы можете хранить двоичные файлы отдельно в другой ветке (или даже в отдельном репозитории «package», если можете себе это позволить). Затем проекты сборки можно настроить на использование отдельных рабочих пространств для каждой ветви. Например, проект CI, настроенный на получение изменений из изменений TRUNK, будет полностью игнорировать изменения, сделанные в других ветвях. Это позволит избежать сборок, вызванных изменениями в вашей ветке DLL.

...