Я пытаюсь сделать следующее в ANT, но я застрял.Ant: объединить свойства из набора файлов
чтение, которые установлены проекты в моей рабочей области проекта.
workspace buildtools build.xml project1 build.xml project.name = "project1" IP = "44.55.66.77" SERVER_NAME = "project1.local" DOCUMENT_ROOT = "c:\inetpub\project1" project2 build.xml project.name = "project2" IP = "44.55.66.77" SERVER_NAME = "project2.local" DOCUMENT_ROOT = "c:\inetpub\project2" ....
Создайте директиву виртуального хоста Apache для каждого проекта.
<VirtualHost 44.55.66.77> DocumentRoot "c:\inetpub\project1" ServerName project1.local </VirtualHost> <VirtualHost 44.55.66.77> DocumentRoot "c:\inetpub\project2" ServerName project2.local </VirtualHost> ....
Конкатенируйте директивы VirtualHost в файл конфигурации Apache.
Я провел много часов, изучая различные задачи, которые я мог бы использовать. Concat, loadproperties, набор файлов, фильтровщики и т. Д. Я становлюсь перегруженным всеми возможностями, и голова вращается.
Вот моя ужасная догадка, как это может быть сделано:
<concat destfile={$apache.config.file}>
<fileset>
<include name="**/build.xml"/>
<loadproperties resource="fileset.item.project.name???"/>
<filterchain>
<replacetokens>
<token key="IP"
value="${p.IP}"/>
<token key="DOCUMENT_ROOT"
value="${p.DOCUMENT_ROOT}"/>
<token key="SERVER_NAME"
value="${p.SERVER_NAME}"/>
</replacetokens>
</filterchain>
</fileset>
<concat>
Спасибо за помощь!
не соответствуют точно: где указаны значения IP/DOCUMENT_ROOT/SERVER_NAME - в файле свойств по каждому проекту? Или в файле build.xml по каждому проекту? Похоже, что buildtools не должен генерировать директиву виртуального хоста - это правильно? –
Вы правы. Извините, я должен был быть яснее. Вопрос отредактирован. – dbasch
Чтобы быть яснее; Обычно у меня есть свойства каждого проекта, определенные в файлах в каждом проекте. Я показываю их как часть build.xml выше для краткости. – dbasch