AEM-与Maven的持续集成

muntakim360

我在AEM和Maven中也很新,我想为我的AEM网站实现CI。

下面是要在Go.CD或Jenkins中实现的流程,在这些流程中,我已经弄清楚了如何执行前三个阶段。

我现在正挣扎于4号和5号(与4号相同)。

我想处理mvn clean install -PautoInstallPackage上传到nexus存储库的工件,但不安装当前代码。

请在以下阶段旁边查看评论

      +-----------+
(1)   |    GIT    |   Start the pipe line when
      +-----+-----+   code is committed.
            |
            v
      +-----+-----+
(2)   | UNIT TEST |    Run the *mvn test*
      +-----+-----+
            |
            v
      +-----+-----+    Run the *mvn clean deploy*
(3)   |   DEPLOY  |    And this uploads the artifacts
      +-----+-----+    to a private nexus repository
            |
            v
      +-----+-----+    Install the artifact compiled, jar'ed
(4)   | INSTALL TO|    and uploaded to nexus repository in stage 3
      |   QA ENV  |    when manually triggered.
      +-----+-----+
            |
            v
      +-----+-----+    Install the same artifact from the
(5)   | INSTALL TO|    current pipeline compiled in 
      |  STAGING  |    stage 3 to staging when manually
      +-----------+    triggered.

非常感谢您的帮助。

阿比舍克

步骤4和5在Maven构建/部署阶段之外。这些与跨环境的代码升级流程更为相关,跨环境的代码升级流程可能因组织而异。

由于您正在使用AEM,因此有一些选项可以使用curl将构件(AEM软件包或OSGI捆绑软件)部署到服务器。许多常用的curl命令可以在这里找到

您可以创建脚本,这些脚本可以将工件上传/安装/卸载到AEM。脚本的输入可以是您想要的服务器环境和工件名称/版本。然后,Jenkins作业可以触发这些脚本,从而从Jenkins控制变量向脚本提供所需的输入。

例如curl -u username:password -F file=@"name of zip file" -F name="name of package" -F force=true -F install=true http://localhost:4503/crx/packmgr/service.jsp
这是软件包安装shell脚本的症结所在。用户名,密码,AEM服务器URL包zip都可以是变量,当作业触发此脚本的执行时,可以从Jenkins传递这些变量。

如果您的软件包位于本地关系仓库中,则可以使用此脚本在安装到AEM之前先下载软件包。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章