Jenkins基于多个Web应用程序项目的自动化

时间:2017-05-14 13:53:06

标签: maven jenkins

这个问题是关于Jenkins CI配置的

我们正在开发小型开源项目。该项目包含以下组件:

  • A1:核心平台网络存档(WAR)
    • A2:社交Feed聚合WAR(与A1,A2和A3无关)
    • A3:交易平台WAR
    • A1的角度UI
    • A3的角度UI
    • A3使用A1和A2 *
    • 公开的服务

我们希望自动化测试和计划使用Jenkins。 (截至目前,测试是手动的,测试用例在Testlink中编写) 这是我的愿望计划

  • QA团队发送命令电子邮件以构建应用程序包
  • App bundle包含以下项目:
  • 1 A1.war - 这将从预定义的地方复制(我们可以指定 它在电子邮件中)

  • 2 A2.war - 这将从预定义的地方复制(我们可以指定 它在电子邮件中)

  • 3 A3.war - 这是maven项目,将被编译,打包和 复制到标准目的地
  • 复制4个UI目录
  • 5完成上述所有步骤后,我们的自定义脚本之一 应该执行(它将准备码头图像并在QA上部署 服务器)
  • 6电子邮件与结果一起发送
  • 7 QA团队开始测试testlink
  • 8记录结果并通知团队

我们应该如何为此配置Jenkins。我读过有关Pipelines(脚本/声明)的内容,看起来像是最接近的选择。

很高兴听到公开声明并提前致谢。

最好的问候

1 个答案:

答案 0 :(得分:2)

声明性管道是配置作业的最新且通常推荐的方式,如果您刚开始使用jenkins(如果您已经开始编写脚本,那么必须明白这一点并不明显迁移)。

我认为您可能正在谈论基于电子邮件触发构建。我建议避免这种情况,而是让您的QA人员通过jenkins(UI或API)启动并启动构建,并使用parameters指定一个构建的唯一参数。

email-ext plugin可以发送电子邮件。

詹金斯将登录每个版本,以便您记录一段时间内发生的事情。

所以你需要阅读很多文档,制作一个Jenkins文件,并继续迭代它。将会有一些学习曲线,但您最终会将您的构建完全编成法典,这对于您的开源项目的长期可维护性而言将是一个很大的帮助。祝你好运!