XL Deploy插件命令在升级时未执行

时间:2018-09-19 11:43:23

标签: maven xl-deploy

我是XL Deploy的新手。我们在pom中定义了XL Deploy命令,以在应用程序升级后执行。该功能在首次安装该应用程序时有效,但无法在后续升级中运行。要强制其运行,我们必须通过XLD取消部署该应用程序,然后重新部署它,然后该命令才会执行。

<cmd.Command name="appname-{{env}}-Restart-App">
    <tags>
        <value>node02</value>
        <value>node01</value>
    </tags>
    <commandLine>sudo /usr/bin/systemctl restart app-service-name</commandLine>
    <order>90</order>

    <undoCommandLine>ls -al</undoCommandLine>
    <undoOrder>49</undoOrder>
    <undoCommand ref="appname-{{env}}-Restart-App" />
    <runUndoCommandOnUpgrade>true</runUndoCommandOnUpgrade>
</cmd.Command>

我希望命令在每次升级应用程序时都能运行,但是不会。为什么不呢?

使用Maven 3,xldeploy-maven-plugin 5.1.0

1 个答案:

答案 0 :(得分:0)

使用命令插件无法实现。您可以使用alwaysRun的{​​{3}}选项。 更好的办法是在单独的插件中指定此名称,然后使用xld-advanced-command-plugin定义需要执行的内容。这会将命令插件的脚本部分移到基于模型的方法中,该方法具有更大的可扩展性。