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

问题描述 投票:0回答:1

我是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

maven xl-deploy
1个回答
0
投票

使用命令插件无法实现这一点。你可以使用xld-advanced-command-plugin,它有一个alwaysRun选项。更好的方法是在单独的插件中指定它,并使用rule来定义需要执行的内容。这将把命令插件的脚本部分移到基于模型的方法中,该方法更具可伸缩性。

© www.soinside.com 2019 - 2024. All rights reserved.