2011-11-13 60 views
1

我所試圖做的
有要求的用戶選擇Tomcat服務器IP部署WAR文件一個哈德森工作。哈德森部署插件 - 多個Tomcat服務器

我做了什麼
我創建了一個參數哈德森工作「項目名稱部署」,要求用戶選擇服務器部署(開發,分期,住)war文件。在哈德森的部署插件字段「Tomcat URL」中,我提供了http:// $ {SERVER}:8080/- SERVER是包含服務器IP的參數字段。但是,$ {SERVER}不會被用戶選擇的IP地址替換。

關於如何獲得部署到用戶選擇的tomcat服務器的戰爭的任何建議?謝謝!

回答

0

您可以使用不同的配置文件進行開發,登臺和生活,並根據下拉選擇激活配置文件。

比方說,你曾在被稱爲環境的選擇開發的參數化工作創造一個選擇,分期等,然後你可以有輪廓在這樣的POM ...

<profile> 
    <id>dev/id> 
    <activation> 
    <property> 
     <name>env.ENVIRONMENT</name> 
     <value>dev</value> 
    </property> 
    </activation> 
    <properties> 
    <tomcat.url>http://whatever-you-need-here:8080</tomcat.url> 
    </properties> 
</profile> 
<profile> 
    repeat with different activations for staging etc. 
</profile> 

然後你可以使用財產,因爲你想部署到你需要的地方。

+0

我不想通過profiles--做到這一點,主要是因爲我不想在POM文件中輸入服務器的主機名的詳細信息 – dsatish

1

我結束了使用curl命令來部署戰爭而不是戰爭插件 - 服務器名稱是構建作業參數的類型選擇,因此用戶可以選擇要部署構建的服務器。

curl --upload-file <path to warfile> "http://<tomcat username>:<tomcat password>@<hostname>:<port>/manager/deploy?path=/<context>&update=true" 

我發現這個線程Tomcat manager remote deploy script有幫助