jenkins相关内容

Jenkins 声明性管道:仅为管道设置代理时,哪个工作区与阶段相关联?

这是一个声明性管道的示例,其中为管道设置了代理,但未在各个阶段设置: 管道{代理{节点{标签'linux'}}阶段{阶段(“结帐"){脚步 {结帐单片机}}阶段(“构建"){脚步 {sh“制作"}}}} 我发现的有关脚本化管道的文档清楚地表明,将在单个节点块中使用单个工作区,但可能会为多个节点块分配多个工作区,因此有必要在这些步骤之间进行存储,使用外部工作区如果您想确定步骤之间的工作区中的内容 ..
发布时间:2022-01-18 17:24:58 其他开发

如何在 Jenkinsfile 中获取 shell 脚本的输出?

在 Jenkinsfile Groovy 脚本阶段,假设我想发出一个输出字符串的行和列的 linux 命令,并且想要获取某一行的输出中的第 n 列.此类命令的一个示例是“ls -al".所以我这样做对吗? stage("获取目录大小") {sh returnStatus:true,脚本:'''LINE=`ls -al |grep some_dir`IFS="" 读取 -ra COLS ..
发布时间:2022-01-18 17:24:50 其他开发

Jenkins - 从文件系统而不是 SCM 加载全局管道库?

我在文档中找不到有关如何执行此操作的任何内容 - 有人有什么想法吗? 解决方案 目前看来不可能.但是您可以轻松地初始化本地 git 存储库并将其用作 SCM,而无需任何远程托管. 要初始化 git repo,请在共享库的根目录中使用以下命令(例如 C:\Users\Jenkins\pipeline-shared-library-test): git 初始化混帐添加.git commit ..
发布时间:2022-01-18 17:24:43 其他开发

`env.BRANCH_NAME` 变为 `PR-1`

我们使用 Jenkins 管道和Github 多分支. 我在一个名为 feature/my1stfeature 的功能分支上工作.Jenkins 作业返回了正确的分支名称: println(env.BRANCH_NAME) 返回 feature/my1stfeature. 但是,当我在 Github 中创建第一个拉取请求时 println(env.BRANCH_NAME) ..
发布时间:2022-01-18 17:24:19 其他开发

詹金斯管道无法将代码签入git

在我的 jenkins 管道项目中,我可以很好地从 git 中签出代码...但是我们需要进行一些 git 签入,并且凭据显然没有被缓存. 阶段“结帐"git url:'git@bitbucket.org:myproj.git',分支:'master',credentialsId:'012ce21d-e920-44ee-b6f7-08df8ab41de0',变量:'CREDENTIALS'sh( ..
发布时间:2022-01-18 17:23:26 其他开发

Jenkins 管道构建如何确定工作区文件夹?

在 Jenkins 管道中,当在特定节点上运行构建时,会在该代理上分配一个工作区.我们不设置工作区路径,所以它是自动确定的.我知道,当同一个作业在同一个代理上同时运行时,工作区必须包含执行程序编号以隔离构建. 但是...工作区路径究竟是如何构建的? 我们的构建被分配给一个特定的节点(有 4 个执行器)并且被配置为不允许并发构建.通常是这样分配的: EXECUTOR_NUMBER=1工 ..
发布时间:2022-01-18 17:23:08 其他开发

Jenkins 管道:选择 nodejs 版本(+ python 版本)

我在 Jenkinsfile 中遇到了 Jenkins 管道问题.我的 Jenkins 实例上有 4 个不同的 nodeJs 版本.我想选择在我的管道中使用哪一个,但官方插件示例(https://wiki.jenkins-ci.org/display/JENKINS/NodeJS+Plugin) 根本不起作用. 我尝试了第一种方法,但失败了,因为 $PATH 被 tools 部分覆盖. 管 ..

Jenkinsfile when-branch 设置的模式评估是什么?

我正在尝试检测阶段内 when 语句上的分支模式. 像这样: stage('部署到登台') {代理标签:'some-node'当{分支“功能/*"}脚步 {sh './deploy_pr.sh'} } 如果我想要更复杂的模式怎么办? 我正在尝试检测诸如 feature/0.10.25 之类的东西,但以下模式不起作用: when { 分支'feature/[0-9]+.[0- ..
发布时间:2022-01-18 17:22:53 其他开发

如何在工作开始前清除 Jenkins 管道中的工作区

我需要在构建开始之前清除工作区.我尝试分阶段使用 cleanDir() ,但是在声明性管道中,首先发生签出,当带有 cleadDir 的阶段运行时,签出的代码也会被清除,这是不需要的.我们如何在声明式管道中签出之前清除工作区? 解决方案 使用你的 VCS 的方法,用 Git 运行 git clean -fdx ..
发布时间:2022-01-18 17:22:43 其他开发

使用带有闭包映射的 failFast 会破坏“并行".步

不确定这是我对 Groovy 的有限了解还是 Pipeline parallel 步骤中的怪癖.如果我使用 map 而不是单独传递每个闭包,我无法让它接受 failFast: def map = [:]地图['垃圾邮件'] = {节点{回声“垃圾邮件"}}地图['鸡蛋'] = {节点{回声“鸡蛋"}}并行地图//有效.并行垃圾邮件:map['spam']、eggs: map['eggs']、fa ..
发布时间:2022-01-18 17:22:16 其他开发

Jenkinsfile DSL如何指定目标目录

我正在探索 Jenkins 2.0 管道.到目前为止,我的文件非常简单. 节点{阶段“结帐"git([url:"https://github.com/luxengine/math.git"])“构建"阶段echo "从管道构建"} 我似乎找不到任何方法来设置 git 将结帐到的目录.我也找不到任何与此相关的文档.我找到了 https://jenkinsci.github.io/job-dsl- ..
发布时间:2022-01-18 17:22:00 其他开发

如何在 shell 脚本中使用 Jenkins 参数

我想使用我们在 Jenkins 作业中定义的参数作为同一作业中 shell 命令的参数. 我创建了一个带有以下参数的参数化构建: high.version: 234低版本:220 我想将这些变量用作构建的 shell 脚本的参数: /bin/bash/hai/mycode/scripts/run_script.sh high.version 我如何在同一个作业中使用这些参数? ..
发布时间:2022-01-18 17:21:52 其他开发

获取 Jenkins 多分支管道中的分支列表

Jenkins 多分支管道项目的 Blue Ocean 界面显示了几个自动创建的分支. 是否有一种编程方式来列出管道中的分支,从代码中添加到 Jenkinsfile? 此问题询问位于 Jenkins 应用程序对象模型中的 Jenkins 项目分支信息,这些信息应该可以通过 Jenkins API 或 CLI 访问. 我查看了 http:///env-v ..
发布时间:2022-01-18 17:21:37 其他开发

GitHub 分支源插件 -->只扫描 Pull Requests

我们在 Jenkins 中使用 GitHub 分支源插件.它工作得很好.但是,它会扫描分支和拉取请求. 我们希望以仅扫描拉取请求的方式配置插件.这可能吗?如果没有,我们可以在哪里发布我们的功能请求? 解决方案 您可以通过结帐行为在作业中进行配置.只需删除 Discover Branches 项,它应该不会找到任何分支. ..
发布时间:2022-01-18 17:21:19 其他开发