Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在共享jenkins服务器上管理maven settings.xml?_Maven_Jenkins_Nexus - Fatal编程技术网

如何在共享jenkins服务器上管理maven settings.xml?

如何在共享jenkins服务器上管理maven settings.xml?,maven,jenkins,nexus,Maven,Jenkins,Nexus,我有一个Jenkins集群,由多个团队共享,我可以在其上配置构建作业,但是我不能轻松地对Jenkins配置本身进行更改 有一个中心的“nexus pro”maven存储库管理器,但这个大型跨国公司中的每个团队/组都有自己的repo,发布到repo需要用户名/密码组合 这意味着我必须使用maven settings.xml来配置Jenkins服务器,这对于我正在使用的团队来说是唯一的,而不会弄乱Jenkins集群其他用户的maven配置 Git是源代码管理存储库 在共享Jenkins集群上,如何配

我有一个Jenkins集群,由多个团队共享,我可以在其上配置构建作业,但是我不能轻松地对Jenkins配置本身进行更改

有一个中心的“nexus pro”maven存储库管理器,但这个大型跨国公司中的每个团队/组都有自己的repo,发布到repo需要用户名/密码组合

这意味着我必须使用maven settings.xml来配置Jenkins服务器,这对于我正在使用的团队来说是唯一的,而不会弄乱Jenkins集群其他用户的maven配置

Git是源代码管理存储库

  • 在共享Jenkins集群上,如何配置一组构建作业或单个作业所特有的maven settings.xml?处理这种情况的最佳做法是什么

  • 您可以在Maven高级选项部分中为每个作业指定一个特定的seetings.xml路径,我建议使用,提供一个UI来编辑一个或多个Maven设置文件


    可以使用“-s”选项将这些设置文件传递到Maven构建中。

    我们使用管理所有构建节点。它提供了比settings.xml更好的控制。强烈推荐


    Puppet是一种IT自动化软件,可帮助系统管理员在基础架构的整个生命周期中管理基础架构,从资源调配和配置到修补程序管理和法规遵从性。使用Puppet,您可以轻松地自动化重复任务,快速部署关键应用程序,并主动管理更改,从10台服务器扩展到1000台服务器,无论是在内部还是在云中。

    如果您的公司使用Nexus Pro(如您所述),则您独特的Maven settings.xml可以存储在其中,并在构建时使用nexus maven插件进行检索,如下所述:


    与基于令牌的访问相结合(Nexus Pro也是这样做的),您不需要在settings.xml中不安全地存储密码(请参见)

    使用特定配置自动设置maven执行器的一个好方法是使用

    您只需要为Maven从属服务器创建一个框,该框定义它要使用的所有定制变量和文件,并选择您首选的云提供商来部署它

    您还可以灵活地仅在需要时创建新从属,并在指定的保留时间后自动销毁它们

    以下是如何将Jenkins与ElasticBox连接起来:

    以下是如何使用ElasticBox自动创建Jenkins奴隶:

    有一篇博文介绍了如何使用ElasticBox Jenkins插件轻松地从GitHub pull请求构建和部署:


    在使用jenkins构建项目时,我遇到了类似的问题,因为maven central repository中没有ojdbc jar


    当我将
    ojdbc
    jar放在
    WEB-INF/lib
    文件夹中,并删除
    pom.xml
    中的
    maven
    依赖项时,它起到了作用。问题是首先将settings.xml放在jenkins服务器上,因为我没有对jenkins机器的shell访问权限。也许你可以尝试将settings.xml添加到你的计算机中工作区文件,并使用jenkins变量(如jenkins_HOME)设置工作区的路径。另一个想法是,您可以在全局设置中配置要使用的settings.xml方法,如果我记得很清楚,您可以使用此插件将其定义为“相对工作区”,如何找到要提供到-s中的名称?配置文件插件允许您通过Jenkins管理屏幕创建Maven设置文件。如果您从构建作业中选择此文件的路径,则该文件的路径将自动传递到Maven构建步骤。如果您使用Nexus Pro进行Maven repo,则值得在下面查看RCross的答案固定链接