#ant #jenkins
#ant #дженкинс
Вопрос:
Я использую Ant для «непрерывной интеграции». Одна из моих задач — копирование папок из одной точки в другую. Вот моя задача.
<target name="copy-new">
<copy todir="/files/apps/blog/" verbose="true">
<fileset dir=".">
<exclude name="**/.git" />
<exclude name="**/.gitignore" />
<exclude name="**/pom.xml" />
<exclude name="**/build.xml" />
<exclude name="**/readme" />
<exclude name="**/tmp" />
</fileset>
</copy>
</target>
Как говорится в официальной документации, по умолчанию исключается такая папка .git и т. Д.
Но мои журналы показывают это: (их гораздо больше)
...
[copy] Copying /var/lib/jenkins/jobs/blog/workspace/.git/objects/19/5d7e2de34db6ecc5078c477eb26d0684f68bb7 to /files/apps/blog/.git/objects/19/5d7e2de34db6ecc5078c477eb26d0684f68bb7
...
Как добавить эти файлы в фильтр игнорирования?
Ответ №1:
Вот так:
<target name="copy-new">
<copy todir="/files/apps/blog/" verbose="true">
<fileset dir=".">
<exclude name="**/.git/**" />
<exclude name="**/.gitignore" />
<exclude name="**/pom.xml" />
<exclude name="**/build.xml" />
<exclude name="**/readme" />
<exclude name="**/tmp/**" />
</fileset>
</copy>
</target>
Комментарии:
1. Почему исключения по умолчанию не используются ant? Как
**/.git/**
указано по умолчанию?2. Возможно, вы используете более старую версию
ant
. Это только с 1.8.2.3. Нет, недавно установлено. Версия 1.8.2.
4. О, моя ошибка. Кажется, у меня установлено несколько версий Ant. И действительно, тот, кто выполнял эту задачу, был на 1.8.0.