相关疑难解决方法(0)

如何从一个本地git仓库中获取多个Jenkins构建版本?

我有一个很大的GitHub仓库,包含几个可独立构建的位.如果我为这些中的每一个配置一个(或两个)作业的Jenkins,我最终必须多次拉数千兆字节的数据(每个作业的一个repo克隆).

这需要磁盘空间和带宽.

我想做的是拥有克隆github一次的"刷新本地仓库"工作,然后将每个工作配置为从该仓库克隆自己并构建.然后通过将子作业设置为依赖构建,我可以运行"刷新本地存储库",让它从GitHub中提取所有最新的东西,然后运行每个构建.

到目前为止,我已经有了"刷新本地仓库" - 它成功克隆了,如果我去工作区,我看到它有HEAD提交的origin/master.

问题在于其他工作 - 这些工作似乎没有获得更新.这是我如何配置其中一个:

Git
 Repository URL file:////Users/malcolmbox/.jenkins/jobs/Refresh Local repo/workspace
 Branches to build  master
Run Code Online (Sandbox Code Playgroud)

它没有更新到最新的提交,而是在过去几天停留.

我怎样才能得到它来提示并做正确的事情?

澄清:... /刷新本地回购/工作区已提交6b20268389064590147d5c73d2b6aceb6ba5fe70已提交28/3

运行构建后的依赖构建(因此可能是执行git clone/pull步骤)被检查到提交26/3 - 所以它落后了几天.

git jenkins

31
推荐指数
1
解决办法
2万
查看次数

Jenkins:如何从git存储库构建多个顶级项目?

我有一个Git存储库,其中包含一堆顶级maven项目(每个项目都位于他们自己的子目录中,并带有一个pom.xml).这里的顶级意味着这些项目位于存储库根目录下的子目录中.所有这些项目都应保留在同一个Git存储库中.

repo
+--- projectA
    +--- pom.xml

+--- projectB
    +--- pom.xml
Run Code Online (Sandbox Code Playgroud)

他们可以/应该由独立的詹金斯工作建立.所以我们有一个projectA的工作和一个projectB的工作.

以前使用Subversion,我能够设置一个Jenkins作业(对于每个项目),它只检查项目源并从pom.xml运行Maven构建.

使用Git模型(可能与所有DVCS相同),这种变化,我不确定什么是最佳实践.我看到了一些选项,我不喜欢这些选项:

  1. 每个Jenkins作业都配置为克隆/拉出完整的Git存储库,并引用Maven构建的/pom.xml.因此,该作业具有所有代码,但只构建了一部分.
  2. Git提供Submodules(http://book.git-scm.com/5_submodules.html),它似乎有点难以处理(并且可以轻松破解)
  3. 创建一个maven父(包含所有项目的聚合器)项目,触发每个项目构建(具有单个jenkins作业).这个pom.xml包含projectA和projectB的元素.

你有没有看到更有用的方法(非常典型的设置).你有什么经历?任何最佳做法?

git maven jenkins

21
推荐指数
1
解决办法
1万
查看次数

标签 统计

git ×2

jenkins ×2

maven ×1