【问题标题】:Run mvn install on a cloned repo using chef使用 chef 在克隆的 repo 上运行 mvn install
【发布时间】:2017-03-29 02:56:19
【问题描述】:

我已经将一个小型 webapp 克隆到客户端,下一步是让 maven 构建 war 文件,以便我可以运行它。我完全有能力安装 maven,然后在可执行块中运行命令,但我希望有一个更干净的解决方案。

maven 食谱的文档并不多,我似乎找不到任何地方详细说明如何使用它运行 maven 构建命令等。它似乎更多地用于下载依赖项而不是构建项目。

有什么建议我可以在没有“执行”块的情况下实现这一目标吗?

【问题讨论】:

  • 你看过这本食谱github.com/RelateIQ-chef/maven
  • @glg - 是的,除非我错过了什么 - 我看不到任何与构建当前在驱动器上的项目有关的地方。我的 exec 块工作正常,但感觉不是很优雅。
  • 你能发布你的适用于 mvn 命令的 exec 块吗?

标签: java git maven spring-boot chef-infra


【解决方案1】:

它会在某个时候成为执行资源或对 shell_out 的调用。您可以围绕它构建一个自定义资源,使其看起来更具资源性,但本质上 Maven 安装是一个程序步骤,而不是一个收敛步骤,所以它会有点尴尬。如果您想了解程序与收敛的背景知识,我在https://coderanger.net/thinking/ 写了一份指南。

也就是说,只需使用 execute 块继续前进就可以了。确保你考虑你的幂等性规则,无论是通知还是一些not_if/only_if 守卫。

【讨论】:

    猜你喜欢
    • 2013-10-31
    • 2013-08-22
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 2018-08-14
    • 2018-07-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多