当前位置:主页 > 云通信 > 正文

国内云存储产品_高性能_云主机多钱

时间:2021-04-09 09:22 来源:埃里克云 编辑:埃里克云

核心提示

这篇文章第一次出现在詹金斯.io作者Liam Newman,我经常发现自己需要在一堆不同的配置上运行相同的操作。到目前为止,这意味着我必须在管道中复制同一阶段的多个副本。当我需要进...

国内云存储产品_高性能_云主机多钱

这篇文章第一次出现在詹金斯.io作者Liam Newman,我经常发现自己需要在一堆不同的配置上运行相同的操作。到目前为止,这意味着我必须在管道中复制同一阶段的多个副本。当我需要进行更改时,我必须在整个流程的多个位置进行相同的更改。维护一个更大的配置更是困难声明性管道Pipeline 1.5.0-beta1(现在可以从Jenkins实验性更新站点获得)添加了一个新的matrix部分,它允许我指定一个列表阶段,然后在多个配置上并行运行同一个列表。我们来看看吧!单配置管道我将从一个包含构建和测试阶段的简单管道开始。我使用echo步骤作为构建和测试的占位符actions.Jenkinsfilepipeline{代理无阶段{阶段('BuildAndTest'){任何探员阶段{阶段("构建"){台阶{回音"Do Build"}}阶段("测试"){台阶{回声"做测试"}}}}}}Pipeline for multiple platforms and browser我想在平台和浏览器的组合上运行我的构建和测试。新的matrix指令允许我指定一组轴。每个轴都有一个名称和一个或多个值的列表。当管道运行时,Jenkins将获取这些数据,并在每个轴的所有可能的值组合上运行我的阶段。矩阵中的所有单元并行运行(仅受可用代理的数量限制)。运行每个单元内的阶段顺序。我的矩阵有两个轴:平台和浏览器。我有三个PLATFORM值和四个BROWSER值,这导致我的stage以12种不同的组合运行。我已经更改了回声步数以使用每个轴的值细胞。詹金斯文件管道{代理无阶段{阶段('BuildAndTest'){矩阵{任何探员轴线{轴心{名称"平台"值"linux"、"windows"、"mac"}轴心{名称"浏览器"值"firefox"、"chrome"、"safari"、"edge"}}阶段{阶段("构建"){台阶{echo"为${PLATFORM}-${BROWSER}进行构建"}}阶段("测试"){台阶{echo"对${PLATFORM}-${BROWSER}进行测试"}}}}}}}日志输出(已截断)。。。[管道]阶段[管道]{(BuildAndTest)[管道]平行[管道]{(分支:Matrix-OS='linux',BROWSER='firefox')[管道]{(分支:Matrix-OS='windows',BROWSER='firefox')[管道]{(分支:Matrix-OS='mac',BROWSER='firefox')[管道]{(分支:Matrix-OS='linux',BROWSER='chrome')[管道]{(分支:Matrix-OS='windows',BROWSER='chrome')[管道]{(分支:Matrix-OS='mac',BROWSER='chrome')[管道]{(分支:Matrix-OS='linux',BROWSER='safari')[管道]{(分支:Matrix-OS='windows',BROWSER='safari')[管道]{(分支:Matrix-OS='mac',BROWSER='safari')[管道]{(分支:Matrix-OS='linux',BROWSER='edge')(隐藏)[管道]{(分支:Matrix-OS='windows',BROWSER='edge')[管道]{(分支:Matrix-OS='mac',BROWSER='edge')...为linux做构建-safari为linux构建-firefox为windows做构建-firefox测试linux-firefox为mac构建firefox为linux做构建-chrome测试windows-firefox... 排除了无效的组合我创建了我的基本矩阵,我注意到我有一些无效的组合。Microsoft Edge只在Windows上运行,并且没有Linux版本的Safari。我可以使用排除指令从矩阵中删除无效单元格。每个排除都有一个或多个带有名称和值的轴指令。exclude中的axis指令生成一组组合(类似于生成矩阵单元)。与排除组合中的所有值匹配的矩阵单元将从矩阵中移除。如果我有多个exclude指令,则每个指令都将单独求值以删除细胞。什么时候处理一长串要排除的值,我可以使用notValues代替values来指定不希望排除的轴值。是的,这是一个双重否定,所以会有点混乱。我试着只在我真正需要的时候使用它它。在下面是我的示例管道,我特别排除了linux和safari的组合,还排除了任何非windows的平台浏览器。这个管道使用两个轴,但轴的数量没有限制指令。还有,在此管道中,每个排除都指定两个轴的值,但这不是必须的。如果我们只想运行"linux"单元,我们可以使用以下排除:exclude{轴心{名称"平台"notValues"linux"}}管道{代理无阶段{阶段('BuildAndTest'){矩阵{任何探员轴线{轴心{名称"平台"值"linux"、"windows"、"mac"}轴心{名称"浏览器"值"firefox"、"chrome"、"safari"、"edge"}}排除{排除{轴心{名称"平台"值"linux"}轴心{名称"浏览器""safari"价值观}}排除{轴心{名称"平台"notValues"窗口"}轴心{名称"浏览器""边缘"值}}}阶段{阶段("构建"){台阶{echo"为${PLATFORM}-${BROWSER}进行构建"}}阶段("测试"){台阶{echo"对${PLATFORM}-${BROWSER}进行测试"}}}}}}}日志输出(已截断)。。。[管道]阶段[管道]{(BuildAndTest)[管道]平行[管道]{(分支:Matrix-OS='linux',BROWSER='firefox')[管道]{(分支:Matrix-OS='windows',BROWSER='firefox')[管道]{(分支:Matrix-OS='mac',BROWSER='firefox')[管道]{(分支:Matrix-OS='linux',BROWSER='chrome')[管道]{(分支:Matrix-OS='windows',BROWSER='chrome')[管道]{(分支:Matrix-OS='mac',BROWSER='chrome')[管道]{(分支:Matrix-OS='windows',BROWSER='safari')[管道]{(分支:Matrix-OS='mac',BROWSER='safari')[管道]{(分支:Matrix-OS='windows',BROWSER='edge')...为linux构建-firefox... 在matrix指令中控制运行时的单元行为我还可以添加"每单元"指令。这些指令和我添加到stage的指令是一样的,它们让我控制矩阵中每个单元的行为。这些指令可以使用它们单元格中的轴值作为输入的一部分,允许我自定义每个单元格的行为以匹配其轴值。开我的Jenkins服务器我已经为每个代理配置了与操作系统相匹配的标签("linux代理"、"windows代理"和"mac代理")。为了在适当的操作系统上运行矩阵中的每个单元,我使用Groovy字符串为该单元配置标签模板化.matrix{轴{。。。}排除{。。。}代理人{标签"${PLATFORM}-agent"}阶段{。。。}// ...}偶尔我会从Jenkins webui手动运行管道。当我这样做的时候,我希望能够选择一个平台来运行。axis和exclude指令定义构成矩阵的静态单元集。这组组合是在运行开始之前,在处理任何参数之前生成的。这意味着我不能在作业完成后从矩阵中添加或删除单元格已经开始了另一方面,"每单元"指令在运行时计算。我可以在矩阵内部使用"per cell"when指令来控制执行矩阵中的哪些单元。我将添加一个带有平台列表的choice参数,并向when指令添加条件,它要么允许所有平台执行,要么只执行与我选择的匹配的单元格平台.管道{参数{choice(name:'PLATFORM_FILTER',选项:['all','linux','windows','mac',description:'在特定平台上运行')}代理无阶段{阶段('BuildAndTest'){矩阵{代理人{标签"${PLATFORM}-agent"}当{任何{表达式{params.PLATFORM_过滤器=='全部'}表达式{params.PLATFORM_过滤器== 环境平台}} }轴线{轴心{名称"平台"值"linux"、"windows"、"mac"}轴心{名称"浏览器"值"firefox"、"chrome"、"safari"、"edge"}}排除{

  • 企业云_哪里买_大数据网站 企业云_哪里买_大数据网站

    Delphix最近与AWS合作,帮助人们和团队加快并确保迁移到业界领先的Amazon Web服务云平台。AWS市场上的Delphix结合了AWS,加快了重要的迁移项目,并将时间从几周、几个月缩短到几天。客...

  • 云存储服务器_网站_云存储文件上传 云存储服务器_网站_云存储文件上传

    数据操作帮助人们与数据连接的方式因技术、用户和用例的不同而有很大差异。例如,数据民主化一直是分析界的话题,专注于为非技术用户提供回答关键问题和推动业务新见解所需...

  • 带宽和网速的关系_如何租用_工业大数据 带宽和网速的关系_如何租用_工业大数据

    在大多数人可能会做噩梦,梦到上班时忘了穿裤子,数据库管理员(DBA)的噩梦围绕着出现在工作中,被告知生产系统出现严重故障或其他高影响情况,而完全不知道。监控和警觉是...

  • 阿里服务器_如何选_物联网开发套件 阿里服务器_如何选_物联网开发套件

    几天前,在旧金山的纳斯达克中心,我见到了首席信息官Ken Piddington先生,他也是首席信息官的执行顾问。Ken说:"我和首席信息官和IT部门的首要任务是数据转换。"事实上,他经常听...

  • 阿里服务器_阿里云_国内物联网操作系统 阿里服务器_阿里云_国内物联网操作系统

    "对创新的需求正在增长,而且增长迅速,"埃森哲的吉滕德拉·卡瓦特卡尔(Jitendra Kavathekar)最近在旧金山举行的Delphix数据活动上评论道我们需要将人们与技术联系起来,推动全球的...

  • <strong>香港cn2服务器_什么是_大数据分析软件有</strong> 香港cn2服务器_什么是_大数据分析软件有

    数据的使用应该是无摩擦的,让数据消费者能够看到和访问所有版本的授权数据,而不必考虑位置、云平台或存储供应商。为了确保这些能力,企业实施解决方案,在管理数据的运营...

  • 数据云_怎么购买_云服务器哪便宜 数据云_怎么购买_云服务器哪便宜

    上周,我们的一个主要合作伙伴给我发了一封信,帮助他了解在Oracle和SQL Server上实现Delphix的方式之间的差异。如果您不熟悉Delphix动态数据平台(DDP),那么在您阅读完Oracle的支持和...

  • 负载均衡_如何租用_人工智能用的什么技 负载均衡_如何租用_人工智能用的什么技

    德尔菲斯工程和支持是非常了不起的人。他们继续寻求解决方案,不管需要多少时间,也不管他们面临支持异构环境、硬件配置和客户需求的复杂挑战。这篇文章是为了支持我们的团...

  • 大宽带服务器_海外_关系型数据库和非关 大宽带服务器_海外_关系型数据库和非关

    大家好!我又回到了"演示马鞍"上,来展示将数据从一个云复制到另一个云是多么容易。数据摩擦比比皆是,很少有地方像云迁移项目那样感受到数据摩擦。将数据传输到云中可能是一...