当前位置: 首页 > 面试题库 >

带有两个git存储库的Jenkinsfile

房学文
2023-03-14
问题内容

我正在将Jenkins管道插件与Jenkinsfile一起使用。

在一个名为vms.git的存储库中,我有Jenkinsfile及其构建的应用程序。

我还有一个名为deploy.git的存储库,其中包含我想用于在vms.git中部署应用程序的脚本。

目前,我的Jenkinsfile看起来像这样

node {
  stage 'build'
  checkout scm

并且我在作业配置中定义了vms.git存储库。

因此,我想做的是检出两个存储库,然后使用vms.git中的Jenkinsfile定义其余的构建。我想在其他管道中重用deploy.git脚本,所以我不想在其中放置Jenkinsfile。


问题答案:

您可以使用来签出多个目录checkout,但是必须指定要在其中签出的目录。您可以使用jenkins生成代码段(代码段生成器下面的脚本字段)。选择签出,下一个git存储库,然后在“其他行为”中选择:签入子目录。

当您有2个存储库时,可以从想要使用的存储库中加载脚本load。例:

node {
    // first repository
    checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'subdirectory1']], submoduleCfg: [], userRemoteConfigs: [[url: 'repo1.git']]])
    // second repository
    checkout([$class: 'GitSCM', branches: [[name: '*/master']], doGenerateSubmoduleConfigurations: false, extensions: [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'subdirectory2']], submoduleCfg: [], userRemoteConfigs: [[url: 'repo2.git']]])
    // run first script
    load 'subdirectory1/Jenkinsfile'
    // run second script
    load 'subdirectory2/Jenkinsfile'
}


 类似资料:
  • 我正在使用Jenkins管道插件和Jenkins文件。 在一个名为vms的存储库中。git,我有Jenkinsfile和它构建的应用程序。 我有另一个名为deploy的存储库。git,其中包含我想用于在VM中部署应用程序的脚本。吉特。 目前我的Jenkinsfile就是这样的 我正在作业配置中定义vms.git存储库。 所以我想做的是检查这两个存储库,然后在vms中使用Jenkinsfile。gi

  • 我尝试在本地运行此存储库 我安装了git,但当我运行此命令时: 编辑运行另一个命令时收到此错误:

  • 问题内容: 我想使用两个Git存储库构建一个项目。其中一个包含源代码,而另一个包含构建和部署脚本。 我的问题是我需要一个用于构建和部署项目不同部分(大型项目,多个存储库,相同的构建和部署脚本)的存储库,但是Jenkins似乎无法处理此问题(或者我不知道)不知道/找不到方法)。 问题答案: 更新 现在不建议使用多个SCM插件,因此用户应该迁移到Pipeline插件。 旧答案 是的,詹金斯可以处理。只

  • 这是我的Spring Boot应用程序。当我运行main方法时,总是抛出一个空指针异常。我不知道为什么@Autowired JsonReaderService是空的。我把它定义为组件。 它是项目src文件夹中的子文件夹,因此主方法位于源文件夹之上。所以spring应该正确扫描它?? 堆栈跟踪 由:com.creditsuisse.demo.demoapplication.main(demoappl

  • 主要内容:创建一个远程存储库在本章中,我们将看到如何创建一个远程Git仓库; 我们需要一个远程Git仓库来执行团队协作。这一篇文章很重要,直接影响到后面的章节的学习。所以,希望大家可先耐心地看完本章内容,并按本章一步步的操作。 创建一个远程存储库 我们将演示在 http://git.oschina.net/ 软件项目的托管平台上创建和初始化一个新的存储库。 注:你也可以使用 GitHub (http://github.com

  • 我和常春藤开始了新的生活。 我有一个本地Git Repo,我把罐子存放在那里。我使用Ant进行构建。 在蚂蚁中,我可以将哪个解析器与Git和常春藤一起使用。需要什么设置才能实现此目的。