В моей компании мы используем Weblogic (в зависимости от установки где-либо между версиями 6.1 до 11g).
Прямо сейчас мы встраиваем переменные среды в наши уши, банки и войны. Это даже включает файл weblogic.xml
, где у нас есть что-то вроде этого:
<working-dir>/opt/bea/wl61/server/domains/deploy/prod3/temp/work</working-dir>
Это означает, что мы должны восстановить одни и те же банки, уши и войны для каждого окружения. И, если есть изменения в окружающей среде, мы должны восстановить и повторно развернуть войны, уши и банки. Вы можете вообразить проблемы и проблемы, с которыми мы сталкиваемся в управлении сборкой и выпуском (это моя работа).
На моей последней должности мы использовали JBoss и каким-то образом смогли создать общие и развертываемые уши. Я бы попросил Хадсона создать ухо, которое разработчики могли бы использовать для их тестирования. Затем это же ухо можно передать нашей команде QA в их среде, в UAT, на стадии подготовки и в производство.
Мы могли бы совершить этот удивительный подвиг, потому что мы сконфигурировали JBoss для поиска файлов свойств ВНЕШНИЙ ВИД или самого уха. Был каталог config
, который был родственником каталога deploy
, который содержал любые необходимые файлы свойств. Можно ли настроить Weblogic на то же самое?
Нам нужен способ сделать это с минимальными изменениями кода. Я уже изучил источник, и мы не указываем имя каталога, когда мы указываем загрузку значений в файлах свойств. Следовательно, мы могли бы сделать это с какой-то идеей CLASSPATH
.
Я понимаю, что эти свойства должны где-то существовать, но я бы предпочел, чтобы их можно было настроить в среде и, возможно, сделать, указав путь относительно каталога deploy
. Я хочу использовать одни и те же файлы ear, jar и war независимо от того, в какой системе вы находитесь: настольный ПК с Windows, Linux, Mac или сервер Solaris.
Самым сложным будет наш встроенный путь weblogic.xml
. Может ли этот путь быть относительно каталога развертывания, а не из корня системы?
Как я уже говорил ранее, я менеджер по сборке, поэтому для всех это моя головная боль, а не их проблема. Если развертывание не проходит успешно, Finger 'o Blame может указывать прямо на меня.
Чтобы это сделать, я должен найти решение, которое нам просто реализовать. Мы не можем переписать все и изменить все вокруг. В противном случае я не могу заставить другие команды сделать это. В конце концов, это моя проблема, а не их. Нам нужно что-то с минимальными изменениями кодирования (желательно без изменений) и минимальными изменениями в нашей настройке Weblogic. Я хочу кое-что, чтобы в версии 3.4 нашего программного обеспечения мы делали это в соответствии со старомодным окружением, но в версии 3.5 мы можем развертывать экологически нейтральным способом и делать это с минимальными изменениями в нашей среде развертывания.