微软发布了Azure Pipelines,他们新的CI/CD服务,是Azure DevOps产品的一部分。Azure Pipelines可用于构建、测试和部署工作负载,并可以让各种语言、项目类型和平台协同工作。
作为Visual Studio Team Services(VSTS)的后续产品,Azure DevOps由几个组件组成,Azure Boards、Azure Repos、Azure Test Plans、Azure Artifacts和Azure Pipelines。Azure DevOps提供了端到端服务,用于共享代码、跟踪工作并提供类似于其他服务(如Atlassian Stack)的解决方案。这些组件都是Azure DevOps链中的一个链接,Azure Pipelines实现了CI/CD管道的角色。此外,Azure Pipelines具有以前在VSTS中可用的所有功能,并补充了一些新功能。
Azure Pipelines是一项独立服务,可以独立于其他Azure DevOps组件使用。
可以直接通过GitHub Marketplace获取和配置新的管道。
更好地与GitHub集成,包括拉取请求的构建和跟踪代码提交及其相关问题。
通过容器作业来支持原生容器。
开源项目可以免费使用Azure Pipelines。
相比VSTS,Azure Pipelines提供了更加灵活的免费使用限制。
在私有项目中使用Azure Pipelines时,可以免费使用每月1800分钟的云托管CI/CD,在自托管代理上运行没有时间限制。随后,可以从Azure DevOps和GitHub Marketplace购买其他并行作业(包括无限分钟)。有了Azure Pipelines,可以与各种代码存储库集成,例如Azure Repos、GitHub、Bitbucket等。此外,开源项目可以完全免费使用Azure Pipelines,具有无限的CI/CD分钟和最多10个并行作业。Sam Cogan是一名解决方案架构师和Azure MVP,他表示这对开源项目非常有用。
在GitHub项目中启用Azure Pipelines,你可以免费运行构建。唯一的限制是你只能同时运行10个并发构建。这对于开源项目来说是一个很棒的新功能。
在部署方面,Azure DevOps也很灵活,可以部署到Linux、Windows、macOS和云平台上,包括Azure、AWS和Google Cloud Platform。可以使用无服务器、容器注册表(如Docker Hub和Azure Container Registry)、虚拟机和Kubernetes在多个系统上进行部署。
来源:https://azure.microsoft.com/en-us/solutions/architecture/cicd-for-containers/
Azure Pipelines的作业是通过YAML创建的,可使用可视化设计器生成或遵循模式引用。Visual Studio Code扩展和Web编辑器正在开发当中。此外,可以将多个作业添加到管道中,从而将管道划分为多个部分。通过这种方式可以有条件地执行任务或实现扇入/扇出模式。
要开始使用这个新服务,首先需要注册Azure Pipelines或Azure DevOps,然后指定存储库并选择模板。Sam Cogan在他的文章中详细地解释了完整的过程。
原文地址: http://www.infoq.com/cn/news/2018/09/microsoft-azure-pipelines
.NET社区新闻,深度好文,欢迎访问公众号文章汇总 http://www.csharpkit.com