摘要:2月27日,华为云正式发布流水线服务CodeArts Pipeline,旨在提升编排体验,开放插件平台,以及提供标准化的DevOps企业治理模型,将华为公司内的优秀研发实践赋能给伙伴和客户。
本文分享自华为云社区《企业研发治理转型利器 华为云发布流水线服务CodeArts Pipeline》,作者:华为云头条。
软件持续交付流水线是一个可视化的自动化任务编排调度平台,串联编译构建、代码检查、自动化测试、部署发布等任务,承载软件从代码提交到发布上线全自动化流程。一次配置后即可重复触发执行,避免频繁低效的手工操作。
流水线工程能力伴随软件技术的发展也在逐步演进,现有的DevOps工具链集成有很大的局限性。
数据显示,一套成熟的Pipeline工具链涉及20多种研发工具,企业搭建往往需要3个月,其中40%的时间在管理和配置工具。如何帮助企业建设自动化、标准化和规范化的流水线解决方案成为新的课题。
2月27日,华为云正式发布流水线服务CodeArts Pipeline,旨在提升编排体验,开放插件平台,以及提供标准化的DevOps企业治理模型,将华为公司内的优秀研发实践赋能给伙伴和客户。
华为公司在软件开发领域有30年以上的交付经验,从早期的无线基站、路由器,到后来的终端应用,再到云计算服务,持续交付和流水线作业系统也同样在做持续演进。
该演进过程大致可分成三个阶段:
第一个阶段为自动化,将软件交付的各道工序以流水线的方式统一定义,一次编排,可重复执行,降低流程因手工干预导致的质量风险,极大提高了软件开发效率。但是随着业务的发展,研发管理者面临新的问题:
这就需要演进到后续阶段解决上面的问题。
第二阶段为标准化。标准化流程通常需要依靠人的管理,但是“人治”经验难以形成有效的知识资产被其他团队继承和使用,并且软件发布过程中时常会出现流程未被正确执行而导致的现网事故。
流水线承载了从代码开发到软件发布全过程研发数据,企业每年流水线作业系统上积累的数据,都是一笔关键的知识资产,要让这批资产有效利用起来,也就是以数字化的方式辅助企业进行研发治理。
第三阶段为规范化。华为通过多年的持续交付实践经验,总结出了一套行之有效的研发策略管理模型,以数字化的管理方式将要求内置在流水线中,规范流水线每个阶段的质量管理要求,也将软件交付从依靠人的治理转变为工具和流程的自动化治理,真正将企业的研发治理模型和流水线作业系统相结合,让开发者无感开发,流程天然合规。
华为流水线的核心为编排调度+开放平台+企业研发治理。过去,华为云CodeArts Pipeline一直致力于协助客户软件工程能力建设,流水线已具备任务编排调度、执行策略管理、质量门禁等核心能力。本次发布的重点是提升编排体验,开放插件平台,以及提供标准化的DevOps企业治理模型,将华为公司内的优秀研发实践赋能给伙伴和客户。
流水线是开发人员极为重要的工作平台,使用体验对企业的研发效率影响很大,企业的配置管理工程师通常要对成百上千的流水线进行频繁的创建、编排和更新。
华为云CodeArts Pipeline注重一站式体验,所见即所得的交互方式,降低用户的学习和使用成本,本次的全新UI升级,重在提升编排体验,让开发人员可在5分钟内完成个人流水线的创建。通过串并行的混合编排,多层任务嵌套等更灵活的编排模式,快速完成企业多个研发场景流水线工程建设。
中大型企业一般都会有自己的流水线工具链,在企业上云后,对于企业自建的CICD工具,开源工具等资产无法被继承和复用,造成大量的重复建设和浪费。
华为云CodeArts Pipeline提供了一套标准的流水线扩展插件接入方式,让企业能够快速将已有的工具接入到插件平台,或者基于自身业务需求快速开发和发布插件,并在企业内进行共享和共建。
其优势在于:
注:目前流水线扩展插件只面向企业开放
传统ICT领域软件通常按大颗粒版本进行发布,集中式版本发布的显著问题是每个版本承载特性过多,从需求提出到正式上线时间跨度大,响应周期长,影响企业抢占市场。
华为云CodeArts Pipeline给企业提供了一种微服务模型,将企业大军团的作战方式转变为小团队精英作战,支持每个微服务独立的进行开发、验证、部署及上线发布,缩短需求的发布周期,同时支撑企业按照业务功能来组织团队,优化管理模型,运作更为精细化,团队运作效率也可以得到有效的提升。
为保证业务快速上线,关键能力是软件高效的自动化部署,大规模的软件部署通常是让开发人员感到痛苦的事情。
CodeArts Pipeline提供了微服务DevOps变更模式,为软件的开发到发布构建一个可重复且可靠的自动化过程。通过以任务交付为对象,缩小每次变更范围,小批量、小粒度、频繁的按需发布和部署,降低发布风险。
微服务变更模型优势在于:
在华为内部,通过基于微服务架构改造和特性解耦,并采用变更管理实践,最终达成:
Policy As Code(策略即代码)是一种通过代码定义和管理自动化策略的方法,基于代码的自动化而不是依赖手动流程来管理策略,允许团队更快地交付并减少人为配置错误的可能性,是一种提高软件交付质量的最佳实践。
DevOps模式质量管理强调工具化承载和自动化检查,华为云CodeArts Pipeline通过策略的代码化管理,将安全、质量、可信等规则内置在流水线中。DevOps策略管理模型以数字化的方式治理企业研发流程,将企业治理规则沉淀为企业的资产。
其优势在于:
在华为公司,可信构建、开源治理、代码检查、自动化测试、安全生产、合规扫描等策略内置在流水线中,共沉淀企业治理模板2000多个,软件发布缺陷率降低80%以上。
云原生技术有助于构建和运行可弹性扩展的应用,降低微服务的部署依赖,使工程能够轻松对系统做出频繁和可预测的重大变更。云原生发布不依赖于特定的云基础设施,而是通过集中的编排调度系统进行动态管理和调度,完成软件快速、低风险部署。
借助以上优势,企业可以面对市场的变化快速做出响应。云原生应用可以在公有云、混合云和私有云中提供一致的体验,本次重磅推出云原生发布管理特性。
其优势在于:
基于以上五大特性,华为云CodeArts Pipeline可以帮助企业建设高效的、可扩展的流水线自动化作业系统,并且通过DevOps研发策略管理,持续规范化客户流水线建设,助力企业高效高质量交付。
如今,华为流水线服务已经支持华为公司云计算、ICT、终端等多个产业的软件持续交付,支撑超过6万软件开发人员日常工作,每日执行高达百万次。
未来,华为云CodeArts Pipeline将在平台的开放性,研发数字化治理上持续发力。支持跨workflow的编排、跨平台的交互能力;持续外溢更多企业策略管理模型。CodeArts Pipeline始终以帮助企业建设自动化、标准化和规范化的流水线作业系统为目标,持续为客户创造价值。
华为云CodeArts Pipeline服务已上线,欢迎体验~