Jenkins:依赖其他工件/项目构建工作

时间:2017-04-14 10:51:14

标签: java jenkins gradle build

我正在尝试配置我的jenkins工作,但我在设置方面遇到了一些问题。

我的目标:

  • 核心项目的一个构建工作
  • 与核心项目有依赖关系的项目的一个构建作业

当前设置:

- core 
-- src/
-- build.gradle
-- settings.gradle
- project
-- src/
-- build.gradle
-- settings.gradle

“核心”和“项目”位于不同的git存储库中。

“project”的settings.gradle包含以下代码:

include ':drivers', ':capabilities', ':features', ':extensions', ':pageobjects', ':reports'
project(':drivers').projectDir = new File(settingsDir, '../core/drivers')
project(':capabilities').projectDir = new File(settingsDir, '../core/capabilities')
project(':features').projectDir = new File(settingsDir, '../core/features')
project(':extensions').projectDir = new File(settingsDir, '../core/extensions')
project(':pageobjects').projectDir = new File(settingsDir, '../core/pageobjects')
project(':reports').projectDir = new File(settingsDir, '../core/reports') 

因此,“项目”需要核心模块。在我的本地机器上(使用eclipse,一个工作区),它就像一个魅力,但我不知道如何设置jenkins工作。也许settingsDir的路径不适合Jenkins?也可以在一个作业中包含两个存储库,但如果有两个构建作业会更好。

如何正确配置?

1 个答案:

答案 0 :(得分:0)

在您的情况下,如果您希望为Core和Project使用不同的作业,则gradle设置projectDir不符合Jenkins工作区的路径结构(如果您使用的是Jenkins默认工作区管理)。

使用Custom Workspace,这有助于指向您已设置类似于Dev文件夹结构的文件夹的文件夹。

例: 创建根文件夹以保存Core和Projects并假设您正在运行Jenkins(/ var / lib / jenkins / workspace / code)

代码

-core

- SRC /

- 的build.gradle

- settings.gradle

-project

- SRC /

- 的build.gradle

- settings.gradle

将核心作业的自定义工作区用作 / var / lib / jenkins / workspace / code / core

并且对于项目作业,将自定义工作区用作 / var / lib / jenkins / workspace / code / project