詹金斯插件安装

2024-07-03

我编写了一个 Jenkins Groovy 脚本,用于在启动时安装 Jenkins 插件。 Groovy 脚本以用于调用我的脚本的 Hook 命名。例如。 init.groovy 在 init-Hook 内触发。该 Hook 在初始化后触发。

在初始化期间,我无法访问更新中心,也无法安装插件。我还可以使用哪些其他 Jenkins Hook?在我看来,我需要一个启动后 Hook。

该脚本在脚本控制台中工作,但在初始化后挂钩中不起作用:

import jenkins.model.*

def pluginParameter="gitlab-plugin hipchat swarm"
def plugins = pluginParameter.split()
println(plugins)
def instance = Jenkins.getInstance()
def pm = instance.getPluginManager()
def uc = instance.getUpdateCenter()
def installed = false

plugins.each {
  if (!pm.getPlugin(it)) {
    def plugin = uc.getPlugin(it)
    if (plugin) {
      println("Installing " + it)
      plugin.deploy()
      installed = true
    }
  }
}

instance.save()
if (installed)
instance.doSafeRestart()

我需要一个系统启动且 uc.getPlugin(it) 不返回 null 的钩子。


通过询问 jenkins-irc 频道解决了这个问题。我需要初始化更新中心的更新站点列表。结果可以在这里找到:blacklabelops/詹金斯 https://github.com/blacklabelops/jenkins/blob/master/imagescripts/initplugins.sh#L22

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

詹金斯插件安装 的相关文章

  • 以非 root 用户身份从 Docker Ubuntu 容器内部调用 Mac 主机上的 Docker 时出现权限被拒绝错误

    我正在尝试从正在运行的 jenkins docker 容器内运行 Docker for Mac 17 06 0 ce mac17 的 OSX 主机上调用 docker 詹金斯 最新 https hub docker com jenkins
  • Groovy:在调用任何方法之前和之后透明地执行代码

    假设我们有一个带有一些方法 静态或非静态 的常规类 我想要做的是在调用此类的每个方法之前和之后执行一些代码 而无需触摸该类 也无需动态操作每个方法内部的代码 我尝试使用 groovy 元类 获取元类的所有方法 然后用包装方法动态替换每个方法
  • 如何在 Jenkinsfile 中使用“findFiles”?

    我的 Jenkinsfile 包含这个阶段 stage Deploy steps script def rpmFiles findFiles glob rpm def rpmFile rpmFiles 0 我想用它来将工件部署到服务器 如何
  • 动态创建的 Jenkins 管道脚本

    我正在使用詹金斯管道项目 在脚本中我想写parallel以动态方式阻止 因为节点数量可以改变 例如 从此 parallel node1 node stage1 stage2 node2 node stage1 stage2 像这样的事情 f
  • Grails 4“静态类型检查”错误仅适用于日期对象[重复]

    这个问题在这里已经有答案了 所以我从 Grails 3 3 x 迁移到 4 0 13 当我尝试编译我的应用程序时 当我尝试使用format任何 Date 属性的方法 例如 class Event Date startDateTime Dat
  • Jenkins 可以向我显示每月损坏构建的总数/百分比吗?

    我有一个 Jenkins 服务器 可以构建 测试大约 50 个项目 不幸的是 其中一些构建失败了 但是我没有一个好的方法来衡量构建失败的频率是否随着时间的推移而增加或减少 我想要的是这样的东西 一份报告向我展示了在一个月内有多少工作不稳定
  • 使用詹金斯凭证

    我想知道如何创建 Jenkins 和 Jenkins 中运行的作业可以使用的凭据来连接到第三方服务 您应该指定您将使用哪个第三方服务 以下是凭证示例位桶 我现在正在使用 Jenkins 版本 1 568 默认情况下有证书特征 因此 如果您想
  • 如何使用 Jenkinsfile 备份 Jenkins

    如何在不使用插件的情况下使用 Jenkinsfile 进行 Jenkins 作业配置备份 要备份的东西 系统配置 詹金斯 职位配置 我们对插件备份解决方案并不满意 因此我们在 master 上运行一个自由式 shell 步骤作业 通常是不行
  • 在长时间 Ajax 调用期间显示进度

    我有一个简单的网站 http www kousenit com twitterfollowervalue http www kousenit com twitterfollowervalue 根据一个人的 Twitter 关注者计算数量 由
  • 无法在 Jenkins 管道作业中通过 DSL (groovy) 存储 sh 命令输出

    我想获得管道 Jenkins 作业中的最后构建输出并附加在电子邮件中 使用 emailext 插件 Curl 工作正常并提供正确的构建输出 但我无法存储在变量中以附加在电子邮件中 我正在使用最新的詹金斯版本 我可以看到有几个关于简单 sh
  • 在 RPM 规范文件中使用 Jenkins BUILD NUMBER

    Name My Software Version 1 0 5 Release 1 Summary This is my software 不确定是否有人以前尝试过这个或者它是否容易 但是 规范文件的版本有两个独特的指示符 版本 指定软件版本
  • Hudson/Jenkins PMD 配置

    我是詹金斯的新手 刚刚开始配置它 这就是我到目前为止所做的 安装并配置 Jenkins 以显示主页 添加了 PMD 插件 Set the HUDSON HOME到特定目录 gt C Work Jenkins 配置测试构建来运行一个简单的不执
  • 由于缺少 EmbeddedServletContainerFactory bean,无法启动 Spring Boot 服务器

    我正在尝试使用 gradle 编写一个非常简单的 groovy spring Web 应用程序来处理依赖项 问题是我无法启动应用程序 而且根本不明白为什么 以下是我在ReleaseApp groovy中的主要方法 package com u
  • 带 null 检查的 Groovy 字符串连接

    有一个更好的方法吗 笔记 part1 part2 and part3是在其他地方定义的字符串变量 它们可以为空 def list part1 part2 part3 list removeAll null def ans list join
  • 詹金斯的默认密码是什么?

    我正在使用 EC2 服务器实例 使用以下命令安装 Jenkins wget q O http pkg jenkins ci org debian jenkins ci org key sudo apt key add sudo sh c e
  • Hudson、C++ 和 UnitTest++

    有谁用过吗Hudson http hudson dev java net 作为 C 项目的持续集成服务器 使用单元测试 http unittest cpp sourceforge net 作为测试库 你具体是怎么设置的 我知道之前有几个关于
  • 字段前的 Groovy @ 符号

    Groovy 中字段名称前面的 意味着什么 对于某些类 我可以访问无法直接访问的私有字段 让我们看看组合闭包 http git codehaus org gitweb cgi p groovy git git a blob f src ma
  • 詹金斯工作生成器

    在我正在从事的一个项目中 我们有一个非常先进的命令行界面来构建 测试 打包和部署软件 现在我们希望使用 jenkins 作为此 CLI 的前端 并且希望能够生成作业配置 我们希望界面简单 用户只需提供几个参数 然后 jenkins 将查询我
  • Kubernetes Jenkins 插件 - 从属设备始终离线

    我正在尝试使用 Jenkins Kubernetes 插件与 Jenkins 协调 docker 从属服务器 我正在使用这个插件 https github com jenkinsci kubernetes plugin https gith
  • groovy 中数组的重载 + 运算符

    我是一个时髦的新手 也许这是小菜一碟 但我想重载数组 列表的 运算符以编写如下代码 def a 1 1 1 def b 2 2 2 assert 3 3 3 a b 我不建议在全球范围内覆盖既定的行为 但是 如果您坚持 这将按照您的要求进行

随机推荐

  • Openpyxl:确定单元格值中的哪个字符是删除线

    我首先提到我正在使用 Python 2 7 和 Openpyxl 2 4 1 本质上 我正在清理工作簿中的一张工作表 我正在检查每个单元格并检查是否有删除线文本 假设我正在查看 A 列 for i in range 1 sheet max
  • 从 JDK 1.7 开始,从 catch 块抛出异常对象不需要 throws 子句!为什么会这样呢? [复制]

    这个问题在这里已经有答案了 今天我在编码时遇到了一个奇怪的java场景 我的方法中有一个 try catch 块 它没有任何 throws 子句 并且我能够抛出 catch 块中捕获的异常对象 它是 Exception 类的对象 因此它不是
  • 如何让 Spring Boot + JPA 不忽略 `@Column(name="productName")`?

    抱歉 细节太长 但我想清楚而彻底 我正在使用 Spring Boot 2 3 4spring boot starter data jpa and spring boot starter web在 Mac 上使用 MySQL 8 的 pom
  • Google Sheets - 在 ArrayFormula 中使用 MAXIFS

    我之所以联系您 是因为我在 Google 表格中遇到了一个问题 无法找到解决方案 而且我确信这里有人可能有答案来拯救我 情况其实很简单 在我的工作表的 D 列中 我有一个电子邮件地址列表 在 H 列中 对于每个地址 我都有一些订单 在 I
  • https 连接适用于 Wifi (wlan),但不适用于 3G/GPRS (umts)

    我觉得这有点奇怪 我将一个工作的 http 连接转移到一个 https 连接 并带有自签名证书这些说明 http blog crazybob org 2010 02 android trusting ssl certificates htm
  • 删除用户在 Neo4j 中的所有关系和连接的节点

    我们选择 neo4j 作为我们 Web 应用程序的数据库 用户拥有大量的关系和连接的节点 截至目前 一个用户大约有 20 个关系 其中一项功能是新闻源功能 如果我想完全删除用户 密码查询是删除的最佳方法还是有其他选择 由于我们仍在计划添加新
  • 如何调整可滚动框架的大小以填充画布?

    我想要滚动的框架位于左侧 我想将其扩展为 填充两者 import tkinter as tk from tkinter import class Example tk Frame def init self root tk Frame in
  • 显示和隐藏元素

    我已经设法让我的菜单系统正常工作 现在可以在单击它们时显示和隐藏部分 我还为此添加了搜索功能 并且效果也很好 完整的工作版本可在此处获得JFiddle http jsfiddle net ECTv9 1 每个部分的制作如下 li a hre
  • Viewbox 内的 TextBlock - 奇怪的渲染

    这是一个关于非常简单的构造的问题 我有以下 XAML
  • 使用java添加android日历事件

    您好 我正在尝试将事件添加到 Android 日历 我是安卓开发新手 请帮助我如何将事件添加到 Android 日历 这是我的代码 它不起作用 当我运行它时 它给我一条消息 应用程序日历 进程 com something something
  • 在 YARN 集群中的特定节点上运行我自己的应用程序主机

    首先 我使用的是Hadoop 2 6 0 我想在 YARN 集群中的特定节点上启动我自己的应用程序主机 以便在预定的 IP 地址和端口上打开服务器 为此 我编写了一个驱动程序 在其中创建了一个资源请求对象并被调用设置资源名称方法设置主机名
  • 如何在 MainActivity 上使用 EditText 显示在自定义alertDialogFragment 上插入的数字?

    我正在使用自定义alertdialog与editText要插入一个数字 alertdialog正在工作 但是当我单击肯定按钮时没有任何反应 它应该显示插入的值 在main activity xml 看来我的界面无法正常工作 我不知道我做错了
  • 在 GCE/GKE 上启用 HTTPS

    我正在 Google Cloud 上使用 Kubernetes 运行网站 目前 一切都运行良好 通过 http 但我需要https 我有几项服务 其中一项是暴露给外界的 我们称之为网络 据我所知 这是唯一需要修改的服务 我尝试在 GCP 的
  • 我可以将 svn:externals 查看到父目录的根目录吗?

    我有两个 svn 存储库 每个存储库用于 iOS 和 Android 版本的移动应用程序 该应用程序的两个版本共享相同的 SQLite 数据库 目前 每个存储库都有自己的数据库副本 这意味着更改必须应用两次 相反 我想添加包含数据库的第三个
  • Bash:在某些文件夹中查找文件,然后创建输出列表

    我是 Bash 新手 我正在尝试在一组特定文件夹中查找文件 我想为每个 check 文件夹中的图像文件创建一个 txt 报告 这是我一直在做的事情 Find images for f in check do find iname jpg o
  • CMake删除包含目录

    有没有办法删除在 CMake 中找到的包含目录 我发现类似的问题here https www mail archive com cmake cmake org msg06396 html 但答案对我来说没有多大意义 我需要与上述消息的作者几
  • 通过管道将结果传递给多个参数(使用 R 4.1+)

    随着马格里特管 https magrittr tidyverse org reference pipe html gt 我偶尔会将结果通过管道传递给多个参数 例如 ds lt datasets airquality gt head ds g
  • Django REST Framework 序列化器字段 required=false

    从文档中 只读 将其设置为 True 以确保在序列化表示时使用该字段 但在反序列化期间更新实例时不使用该字段 默认为 False 必需的 通常 如果反序列化期间未提供字段 则会引发错误 如果反序列化期间不需要该字段 则设置为 false 默
  • 如何知道鼠标按钮的当前状态(mouseup状态或mousedown状态)

    在 Javascript 中 当我单击滚动条 页面中出现的任何滚动条 并将鼠标悬停在图像上时 图像再次开始拖动 图像只能在鼠标按钮按下的状态下拖动 所以我尝试通过了解鼠标按钮状态 mousedown或mouseup 来解决这个问题 这个问题
  • 詹金斯插件安装

    我编写了一个 Jenkins Groovy 脚本 用于在启动时安装 Jenkins 插件 Groovy 脚本以用于调用我的脚本的 Hook 命名 例如 init groovy 在 init Hook 内触发 该 Hook 在初始化后触发 在