使用Hudson和Maven回滚连续部署

使用Hudson和Maven回滚连续部署,maven,hudson,continuous-deployment,Maven,Hudson,Continuous Deployment,在连续部署世界中,回滚是一个棘手的话题 我需要回滚到我的最新版本 我使用Hudson和Maven,我想部署到像JBOSS这样的JavaEE应用服务器上 例如 [...] org.jboss.as.plugins jboss作为maven插件 7.6.2最终版本 有什么想法吗?这取决于技术和使用的CD工具 例如,Weblogic可以选择将替换的包标记为“”并重新激活它 mvn com.oracle.weblogic:weblogic-maven-plugin:redeploy -

在连续部署世界中,回滚是一个棘手的话题

我需要回滚到我的最新版本

我使用Hudson和Maven,我想部署到像JBOSS这样的JavaEE应用服务器上

例如


[...]
org.jboss.as.plugins
jboss作为maven插件
7.6.2最终版本

有什么想法吗?

这取决于技术和使用的CD工具

例如,Weblogic可以选择将替换的包标记为“”并重新激活它

mvn  com.oracle.weblogic:weblogic-maven-plugin:redeploy  
    -Dadminurl=t3://myhost:7001 -Duser=weblogic -Dpassword=mypassword 
    -Dtargets=AdminServer -Dname=sample.war
但是版本(在清单中)必须不同

一般来说,当您构建应用程序时,您将分配一个版本号,然后您可以恢复存储版本历史记录的最新版本

在您的情况下(Hudson CI with Maven)您可以使用DB(在我的情况下是MantisBG的MySQL)来存储刚刚发布的包的版本,然后您可以轻松回滚

这里可以找到一些解释

有时,我们不会只部署一个应用程序,而是部署多个具有“父版本”的包:

  • MyProject 1.0.1版
    • MyApp.ear 1.3
    • MyBatch.jar 2.0

然后你需要一个更复杂的CD系统;在我的例子中,我使用了我的Bug追踪器(MantisBT)提出的层次结构,但是有很多更专业的工具参见

回滚可能很困难,对吧。与你使用的工具和一个插件部分相比,在不了解你的环境的情况下有一个想法更困难。在一本未出版的书中查找有点困难。
mvn  com.oracle.weblogic:weblogic-maven-plugin:redeploy  
    -Dadminurl=t3://myhost:7001 -Duser=weblogic -Dpassword=mypassword 
    -Dtargets=AdminServer -Dname=sample.war