首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Jenkins Job配置插件

使用Jenkins Job配置插件
EN

Stack Overflow用户
提问于 2018-11-30 08:29:03
回答 2查看 603关注 0票数 0

我试图使用Jenkins安装jenkins插件,但是我误解了JJB可以做什么或者我做错了什么。我使用get-plugins-info命令获取插件的YAML描述。稍后,在重新构建jenkins安装时,我使用了jenkins-jobs -p plugins_info.yaml jobs,希望JJB能够安装YAML文件中列出的插件。但它没有安装插件。

因此,我的第一个问题是:我是否应该期望JJB安装这些插件?JJB处理插件信息的文档是有限的,所以我在这里运行假设。

假设JJB应该在YAML文件中安装插件,我如何才能找出为什么没有呢?我看过詹金斯的日志但没有结果。

EN

回答 2

Stack Overflow用户

发布于 2019-07-19 15:02:14

首先,我将提到,我使用创建和版本化我的作业。但是,如果您想以自动化的方式在Jenkins中安装/配置插件,可以使用init.groovy.d脚本来初始化jenkins实例。为此,创建以下目录${JENKINS_HOME}/init.groovy.d/,然后将您的groovy脚本放在该目录中。这是我启动Jenkins时用来安装插件的脚本。

代码语言:javascript
复制
import jenkins.model.*
import java.util.logging.Logger

def logger = Logger.getLogger("")
def installed = false
def initialized = false
def plugins = ["git", "cloudbees-folder", "build-timeout"]

logger.info("" + plugins)
def instance = Jenkins.getInstance()
def pm = instance.getPluginManager()
def uc = instance.getUpdateCenter()
plugins.each {
  logger.info("Checking " + it)
  if (!pm.getPlugin(it)) {
    logger.info("Looking UpdateCenter for " + it)
    if (!initialized) {
      uc.updateAllSites()
      initialized = true
    }
    def plugin = uc.getPlugin(it)
    if (plugin) {
      logger.info("Installing " + it)
        def installFuture = plugin.deploy()
      while(!installFuture.isDone()) {
        logger.info("Waiting for plugin install: " + it)
        sleep(3000)
      }
      installed = true
    }
  }
}
if (installed) {
  logger.info("Plugins installed, initializing a restart!")
  instance.save()
  instance.restart()
}

将同样多的插件名称添加到数组插件中。希望这能帮到你和其他人。

票数 1
EN

Stack Overflow用户

发布于 2019-04-10 07:37:16

JJB没有管理Jenkins插件的能力。您需要查看其他工具来为您处理这些问题,如木偶、ansible等。

update命令中的"get-plugins- info“和"-p”参数的用法是将当前安装的插件信息传递给JJB,如果系统管理员不想在更新运行期间对Jenkins中的所有JJB“管理员”访问“查询”插件信息。Jenkins的最新版本不再允许匿名查询插件信息,不幸的是,将该权限转移到Jenkins内部的管理员权限。

plugins-info很有用,因为JJB支持某些插件的多个版本,并且需要知道安装的版本是什么,以便根据支持的版本适当地创建XML。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53553858

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档