Встала задача организовать автоматизированный деплой webcenter на разработческую площадку. В качестве билд-сервера у нас используется TeamCity. В качестве самого сборщика ant т.к. ничего другого Oracle нам не предлагает. Скрипт сборки - автогенерированный и создается через JDeveloper: File - New - General - Ant - Build file from project. Сгенерированный ant для использования на блид-сервере ( да и на машинах других разработчиков) не очень пригоден и требует доработки напильником. Все прямые пути к либам файловой системе заменены на зависящие от введенного ant property oracle.middleware.home. Пример:
Далее рассмотрим сам скрипт деплоя на python:
Далее пример build.properties для инсталяции Webcenter и integrated Weblogic Server
Во общем-то все спасибо за внимание!
Так же забыл отметить что-бы ojdeploy и все зависимоти были доступны на билд-сервере туда необходимо установить JDeveloper.Windows ojdeploy ${oracle.jdeveloper.ojdeploy.path} Windows WLST ${oracle.jdeveloper.wlst.path} Unix ojdeploy ${oracle.jdeveloper.ojdeploy.path} Unix WLST ${oracle.jdeveloper.wlst.path}
Далее рассмотрим сам скрипт деплоя на python:
adminUser=sys.argv[6]
adminPassword=sys.argv[7]
adminUrl=sys.argv[8]
earPath=sys.argv[1]
repositoryName=sys.argv[2]
partitionName=sys.argv[3]
repositoryType=sys.argv[4]
jndiName=sys.argv[5]
applicationName=sys.argv[9]
targetServers=sys.argv[10]
connect(adminUser,adminPassword,adminUrl)
domainRuntime()
def deployAll():
archive = getMDSArchiveConfig(fromLocation=earPath)
archive.setAppMetadataRepository(repository=repositoryName,partition=partitionName,type=repositoryType,jndi=jndiName,path=jndiName)
archive.save()
deploy(applicationName, earPath, targets=targetServers,remote='true',upload='true',usenonexclusivelock='true')
# Deploy script init
try:
deployAll()
except:
print "Unexpected error: ", sys.exc_info()[0]
dumpStack()
raise
Далее пример build.properties для инсталяции Webcenter и integrated Weblogic Server
adminUserName=weblogic adminPassword=weblogic1 adminUrl=t3://host:7001 repository=mds-CustomPortalDS partition=custom.webcenter.application repositoryType=DB jndi=jdbc/mds/CustomPortalDS targetServers=WC_CustomPortal adminUserName=weblogic adminPassword=weblogic1 adminUrl=t3://localhost:7101 repository=mds-integServerRepos partition=custom.webcenter.application repositoryType=File jndi=/C:/Users/solovyev.vladimir/AppData/Roaming/JDeveloper/system11.1.1.6.38.62.29/DefaultDomain/webcenter/mds-integServerRepos targetServers=DefaultServerИз нюансов, для файловой реализации MDS необходимо указывать допольнительную переменную jndi.
Во общем-то все спасибо за внимание!
