云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

虚拟主机_池州网站建设_安全稳定

小七 141 0

网络研讨会Q&A:利用Jenkins工作流促进持续交付管道

感谢所有参加我们的eSynergy网络研讨会的人,您可以在这里查看录音。以下是网络研讨会幻灯片中的链接:获取代码:https://github.com/harniman/workflow-演示https://github.com/harniman/spring-petclinichttps://github.com/jenkinsci/workflow-plugin/blob/master/COMPATIBILITY.md教程:https://github.com/jenkinsci/workflow-插件/blob/master/教程.mdJenkins Enterprise by CloudBees工作流相关功能可选性:http://詹金斯-enterprise.cloudbees.com/docs/user-指南文件/工作流.html以下是我们在网络研讨会期间收到的问题的答案:________________________________________________________________问:可以通过api接受"暂停输入"吗?A: 是的,你可以发布到一个网址继续。问:在工作流中支持Android仿真器吗?A: 我们还不知道具体的支持。你可以使用'sh'步骤来启动和关闭模拟器?A: 目前还没有,当然您可以从shell脚本运行这样的命令。有一个插件可以跟踪puppet部署。有解决办法吗?A: 目前您将使用布尔值.parse或者只需检查MYPARAM=='true'Q:DSL可以用新命令扩展吗?,例如调用特定于插件而不在内核中的东西?就像运行xcode构建一样。A:DSL步骤是由插件提供的。Q:是否有与工作流兼容的插件列表?A: 看到了吗https://github.com/jenkinsci/workflow-plugin/blob/master/COMPATIBILITY.mdQ: DSL功能可以跨作业重用吗?A: 您可以"加载"您编写的Groovy函数文件,或者将Groovy类提交到Jenkins管理的Git存储库,然后从任意多个流中导入它?A: 目前还没有;只是基于作业/构建权限。问:如果我们有10个提交,那么所有10个构建是否都会在使用10个执行器的转移时暂停,除非有人单击"是"或"否"?A: 它不会在等待时用完执行器(除非您在"node"内部)。如果要自动取消旧的提示,则可以:https://issues.jenkins-ci.org/browse/jenkins-27039Q: 我们有能力和吉拉融合吗?就像在测试失败时用Jira打开一个任务。或者,如果有一种方法可以访问jirarestapi,比如从curl/wget,你现在就可以这样做了。问:你计划实现一个"任务列表"屏幕,让用户看到所有等待他们输入的任务?A: 目前没有。这将是一个很棒的RFE.Q:如何在工作流库中启用自己的jar?有可能吗。是否可以从外部git(scm)下载工作流库目录,而不是使用"静态"内容?A: 当前不支持类路径(插件除外)中的外部jar。您可以从加载步骤加载*.groovy源代码(已解释),或者使用Jenkins管理的Git存储库来保存常见的类/函数?A: 见RFE:https://issues.jenkins-ci.org/browse/jenkins-26133问:你能为一些不仅使用字符串又使用数组的命令提供接口吗?一、 e.由于字符串而不是字符串[]接口,不可能向多个收件人发送邮件或在输入短语中设置多个提交者?A: 要将"submitter"选项设置为"input",您可以设置外部组的名称,例如LDAP组。那么这个小组中的任何人都可以同意。一般来说,是的步骤可以而且确实可以在需要的地方使用数组/映射。可能是RFE,但我认为https://issues.jenkins-ci.org/browse/jenkins-27134一般来说,这是更好的方法(与Jenkins的授权策略配置很好地集成在一起)?A: 看到了吗https://github.com/jenkinsci/workflow plugin开发Q: 当我在slave上运行代码时,当前dir和context设置为workplace目录。这是自动将其设置为作业编号dir还是我必须手动执行?A: 您可以使用dir步骤临时更改目录(如shell脚本中的pushd),也可以使用"ws"步骤请求特定的"锁定"工作区?A: 支持JUnit结果存档。对于声纳,使用https://wiki.jenkins ci.org/display/jenkins/Sidebar Link+PluginQ: 您是否计划提供对步骤列表中的步骤进行分组的功能(现在每个sh都是单独的步骤)以提高可读性?A: 看到了吗https://issues.jenkins-ci.org/browse/jenkins-26107Q: 输入是否发送电子邮件提醒责任方?A: 不可以,但是可以使用不同的"mail"步骤来完成。Q:工作流支持多配置作业吗?E、 g.我可以在工作流中定义配置,以便在不同的平台上运行多个并发构建,并让每个都遵循一个工作流吗?A: 您可以这样做,尽管目前还没有一个很好的方法来按配置分离显示的结果。这是我们正在考虑添加的内容。Q:实现github触发器有多难?A: 看到了吗https://issues.jenkins-ci.org/browse/jenkins-27136你需要Java开发经验和Jenkins插件API的知识?构建升级在工作流中是什么样子的?A: 工作流的升级版本插件的等价物是构建阶段。问:工作流是否提供了捕获测试阶段的测试结果输出并将其聚合到构建阶段中的JUnit测试结果报告的功能?A: 每个生成可以多次运行测试结果存档。目前,所有这些结果都是简单地聚合起来的。https://issues.jenkins-ci.org/browse/jenkins-27395问:对于阶段之间的转换,除了简单的"继续/取消"功能之外,还有其他功能吗?答:https://issues.jenkins-ci.org/browse/jenkins-27039问:检查点和从检查点恢复是Jenkins Enterprise独有的功能吗?A: 是的。OSS工作流确实让构建在简单的Jenkins重启(或从机断开连接和重新连接)中存活下来?我们用木偶来部署。握手是通过MQ进行的,因此部署状态不是立即可用的。A:我建议使用waitUntil步骤来等待设置部署标志。将来可能会有一个步骤被设计为等待MQ事件,或者特别是Puppet等?A: 是的,会反复检查条件,如果仍然错误,间隔会越来越长?A: 您可以使用'sh'(或'bat')步骤将其作为外部进程运行。问:如果您的作业现在在Jenkins重新启动后仍在继续,您如何重新启动那些陷入不良状态或需要关注的作业?A: 如果需要,您可以取消卡住的构建。问:它是否与XebiaLabs XLRelease和/或Nolio ReleaseAutomation竞争?它是否有违规抽象,是否有简单的密钥库来存放所需的密码?A: 不是真正与那种产品竞争;更具互补性。在Jenkins中有与凭证系统的集成:是否可能只获得这个插件的企业版本,或者它只是作为一个包的一部分来提供?A: 目前只作为Jenkins Enterprise包的一部分?A: 是的。(或者你可以在一个不同的文件中定义部分,如果这样可以使内容更具可读性)问:作业DSL插件与之兼容吗?或者插件也在做同样的事情?(虽然我知道Job DSL不支持工作流)A:Job DSL在最近的版本中支持工作流。Q:Job DSL插件可以生成工作流DSL吗?A: 问:有没有其他方法可以创建工作流作业?A: 是的,您可以使用Jenkins企业模板功能?A: 是的,`input message:'…',submitter:'thatUserID'`Q:Jenkins可以用作工件存储库吗?类似于Artifactory.A:您可以从构建中归档工件,但是如果您有大文件,或者希望从其他工具使用它们,建议您使用Artifactory/Nexus/etc.Q:有没有方法发送电子邮件来征求非技术用户的输入?A: 有一个"mail"步骤:是否有启动Hadoop工作流作业的选项?A: 如果一般来说Jenkins有一个云提供商,它可以用来在这种从机上运行工作流"node"步骤。问:想看看Jenkins是否可以在一个单独的地方为hadoop启动作业,可以使用内部Ooozie调度器来启动,有什么选择吗?A: 如果有一个shell命令可以运行来启动作业,那么您可以从工作流中执行它。Q:现在我们依靠多分支项目插件来支持基于拉请求和代码审查的开发过程。使用工作流插件可以达到同样的效果吗?A: 目前还没有,但我想添加这样的支持:https://issues.jenkins-ci.org/browse/jenkins-26129Q: 除了github页面之外,哪里有工作流插件作业配置的来源?A: 提出了一种新的StackOverflow标签?A: 新的Perforce插件(来自Perforce)最近添加了工作流支持。问:你想创建一个groovy脚本来包含可以在其他工作流构建中重用的函数,它应该是一个插件吗?A: 不需要是一个插件,可以只在你的SCM中生存,等等。问:在不同的作业之间共享可重用的groovy部件的推荐方法是什么?A: 您可以使用"load"步骤,也可以在Jenkins托管的Git repo中定义类,然后可以立即导入这些类。问:为什么"生存重启"是在插件中实现的,而不是在Jenkins核心中实现的?A: 技术上的原因太多了,不能在这里讨论。基本上是J