19th.乔梁.持续交付最佳实践

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

乔梁@百度.项目管理部——持续交付的魅力–百度项目管理部•高级架构师–InfoQ•敏捷社区特约编辑•《持续集成》专栏作者–《持续交付》的译者中文站:Arealstory@BaiduDevopsandContinuousDeliveryContextacomplexsoftwareecosystemContext一个复杂的软件生态系统Context7Devs+2QAs+0.3OPc/c++legacycode(10yearsold)7+modulesfewautomationtestsforasinglemoduledeployto170+boxes6monthsago3个月的大版本发布紧急修复较多紧急需求PrayPrayPlaynow3周小版本发布紧急修复很少没有紧急需求Play6个月前多分支并行持续集成主干开发只在发布时拉分支trunkrelease1.1release1.26个月前手工测试内建质量功能验收测试单元测试集成测试系统测试非功能验收测试(容量、安全,……)演示易用性测试探索性测试业务导向的技术导向的支持开发过程的评判项目的内建质量自动化功能验收测试单元测试集成测试系统测试自动化非功能验收测试(容量、安全,……)自动/手工手工演示易用性测试探索性测试业务导向的技术导向的支持开发过程的评判项目的6个月前手工部署一切皆版本控制应用配置信息环境配置信息数据信息环境标准化单一部署脚本6个月前铁路警察共同的目标频繁、高效地沟通共担一些KPIWhatwegotnowDetailsCommitCommitCommitCommit....ABCGAcceptanceAcceptanceAcceptanceAcceptance....AcceptanceInterfacefunction模块级子系统级系统级performanceInterfacefunction试运行Ping发布performanceA子系统测试系统测试试运行生产环境BG自动手动每天每周三周自动化部署流水线可视化可跟踪易审计部署流水线(deploymentpipeline):是软件系统的构建、部署、测试和审批过程的自动化实现。Time1.每次提交代码的质量都达到生产环境可部署2.小步增量发布持续交付smallfeaturechunksLessonlearned软件的发布过程必须是可重复、可信赖的把几乎所有环节都做成自动化把所有内容都纳入版本控制让痛苦提前,并不断练习内建质量“完成”就意味着“已发布”所有人对交付负责持续改进,需要耐心Lessonlearned只构建一次二进制包在每个环境上都使用相同的方式部署对部署结果进行冒烟测试每种部署环境都应该尽可能相似任何地方出现失败,都要立刻停工devops?ValueStreamContinuousIntegrationAgileValueStreamContinuousIntegrationAgiledevopsdevops=culture+toolsCultureToolsautomation–environmentprovisioning•(Puppet,Chef,ControlTier,etc)–appdeployment&datamigration•(Capistrano,DBdeploy,etc)–logging&monitoring•(Splunk,Nagios,Munin,etc)Q&A@乔梁QL@gmail.com@baidu.com关注我们:t.baidu-tech.com资料下载和详细介绍:infoq.com/cn/zones/baidu-salonInfoQ策划·组织·实施关注我们:weibo.com/infoqchina“畅想•交流•争鸣•聚会”是百度技术沙龙的宗旨。百度技术沙龙是由百度与InfoQ中文站定期组织的线下技术交流活动。目的是让中高端技术人员有一个相对自由的思想交流和交友沟通的的平台。主要分讲师分享和OpenSpace两个关键环节,每期只关注一个焦点话题。讲师分享和现场Q&A让大家了解百度和其他知名网站技术支持的先进实践经验,OpenSpace环节是百度技术沙龙主题的升华和展开,提供一个自由交流的平台。针对当期主题,参与者人人都可以发起话题,展开讨论。

1 / 36
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功