使用 Jenkins 从 Git 自动构建 IBM ODM RuleApp
Posted
技术标签:
【中文标题】使用 Jenkins 从 Git 自动构建 IBM ODM RuleApp【英文标题】:Automate IBM ODM RuleApp build from Git using Jenkins 【发布时间】:2021-12-26 10:01:57 【问题描述】:我需要如下构建 ODM RuleApp
-
决策服务和 Java XOM 项目在 Git 中
从 Git 通过 Jenkins 构建 RuleApp
创建的 jar 文件将使用 Jenkins 上传到 Nexus
为了实现上述目的,我看到 IBM ODM 知识中心中指定的使用命令行构建项目的选项 https://www.ibm.com/docs/en/odm/8.10?topic=command-building-projects-build-line
没有Maven的选项,说,有2个步骤
-
编写配置文件
建设项目
我的问题:
我应该将配置(属性)文件放在 Git 中项目的根目录吗?换句话说,如果有一个名为 ODM 的文件夹,并且我在其中提交了我的决策服务和 Java XOM 项目,那么我的配置文件应该直接在“ODM”下……对吗? 配置文件的示例如下。我相信这 4 行足以与 XOM 一起构建我的 RuleApp。我没有扩展模型。
project = ../HelloWorld/Hello 主服务/ 输出 = ../HelloWorld/输出 dep = 简单的 dep xom-classpath = XOM jars/hello-xom-1.0.0.jar
为了构建 RuleApp,我看到了以下命令 java -jar Build_Command_Line_executable_archive -config configuration_file
例如:java -jar rules-compiler/rules-compiler.jar -config samples/config-files/CustomRuleModel.properties
我读到...对于配置文件引用的每个部署配置,该命令将 RuleApp 构建为指定输出文件夹中的独立存档。此文件的名称来自部署配置中指定的 RuleApp 名称。
一个。我应该把 rules-compiler.jar 放在哪里?
b. Jenkins 是指 Git 中的 .properties (CustomRuleModel.properties) 文件吗?这不是根文件夹下的吗?
c。这个输出文件夹是在哪里创建的?如何通过 Jenkins 将创建的 RuleApp .jar 文件移动到 Nexus?
d。 Jenkins 是否需要任何配置来构建 ODM RuleApp? Nexus 的任何特定配置?
我对 Git 和 Nexus 没有任何见解,正在寻找一些详细的指导。请帮忙。
谢谢,
【问题讨论】:
【参考方案1】:几点说明:我建议使用 maven 编译器而不是规则编译器命令,因为它更易于使用。 https://www.ibm.com/docs/en/odm/8.10?topic=SSQP76_8.10.x/com.ibm.odm.dserver.rules.designer.run/build_topics/con_buildcmd_prep_env.html
关于您的问题,如果您使用该 Maven 插件:
a) 插件应该安装在你的 maven repo 中 b) 你能准确地回答这个问题吗? c) 输出文件夹在目标中 d) 您可以使用 Rule Execution Server REST API(使用 curl)部署生成的规则集
最好的 伊曼纽尔
【讨论】:
以上是关于使用 Jenkins 从 Git 自动构建 IBM ODM RuleApp的主要内容,如果未能解决你的问题,请参考以下文章