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

哈德森/詹金斯:在多个工作之间共享参数

郭胤
2023-03-14
问题内容

我大约有20个使用通用参数(用户,密码)的作业,有时密码会过期…所以我必须在所有作业上更改它,这确实很耗时(并且容易出错,我可能会忘记一个)。

我想到了:

  • 使用一种魔术属性文件(如果存在的话)直接将诸如KEY,VALUE之类的行添加到作业参数中
  • 在内部直接添加相同类型的KEY,VALUE对build.xml,但是在哪里?而且真的很丑…也许在其中嵌入了专用XML build.xml
  • 调用一个奴隶作业,该奴隶作业将(如何?)将所需的值推升至父级…

如您所见,我只是从Hudson / Jenkins开始(我使用的是Jenkins 1.424.2.2),谢谢您的帮助!

编辑: 我不是詹金斯实例的管理员,所以我不能访问全局属性…


问题答案:

我最终成功了:

  • 将加密的凭据保存在网页中
  • build.properties借助shell脚本(wget)在Hudson中检索它们,对其进行解密,并在工作区中使用行创建文件name=value(在我的情况下ssh.password=...

之所以行之有效,是因为Ant的构建步骤会检测到该文件,并将内部变量传递到其上下文中。因此,我可以集中我的凭据。



 类似资料:
  • 问题内容: 我试图重命名哈德森/詹金斯的工作。但是,它无法重命名。 有什么办法可以重命名工作吗? 问题答案: 您可以按照以下步骤通过jenkins UI重命名选定的作业: 另一种方式是在对重命名的目录服务器,然后的。

  • 问题内容: 我有两个工作: 上载 发射实例 我想使 Launch-instance 依赖于另一个,以便触发 Launch-instance 自动导致上 载 首先运行。 我可以使用内置的Jenkins功能还是使用插件来实现? 请注意,我 不 希望 上传 总是触发 启动实例 ,这是“建等项目后建”的选项 启动实例 会做。我想要的东西更 类似于 Ant中的 attribute 如何工作 。 问题答案:

  • 问题内容: 我需要创建一个工作,在该工作中需要进行网络上传(即带有文件的帖子)。有没有办法做到这一点?(我尝试过搜索网络)。请注意,所讨论的文件可能非常大。 工作流程(为清晰起见):用户单击“作业”菜单中的构建,用户可以设置参数并进行上传,用户单击提交,然后以该文件为源构建作业。 其他用例:通过POST操作远程启动作业,以上传文件并设置参数。 问题答案: 您可以创建一个Parameterized

  • 我的Jenkins安装有一个(奇怪的)问题,它基本上导致SVN更新在另一个基础上失败。 堆栈跟踪显示了两个问题: 和 如果我在发生这种情况后重新运行构建,一切都会正常工作。 做记号 由ganders编辑,具有完全相同的问题: 这是导致此错误的机器堆栈跟踪。它看起来就像是在它试图访问SVNExtranals目录(.../主干/公共)时发生的,并且由于某种原因,它在第一次尝试访问时没有凭据。然后下一次

  • 问题内容: 我已经全局安装了gulp(npm install gulp -g)。但是我认为这是行不通的。当我在本地程序上进行gulp测试时,它工作正常。但是,当我在github(在Jenkins上)的同一个程序上进行gulp测试时,会出现以下错误。它不会识别gulp命令。有人能帮我吗?感谢詹金斯的错误: 但是在命令行中它运行良好。 问题答案: 为了知道您的gulp在哪里,您应该全局(对所有用户)将

  • 问题内容: 我确实有开发团队的要求来设置构建系统,因此每个构建对于所有分支都将具有唯一的构建编号。 詹金斯使用每个分支的作业进行构建。 有一个jenkins插件可以为工作设置下一个内部版本号,但这至少有两个原因是没有用的: 它会为单个作业设置内部版本号,您不知道如何为所有分支机构设置内部版本号,因为可以随时删除或添加它们 它没有为当前版本设置它 如何获取内部版本号:我们使用git / mercur