理想的程序员必须懒惰,永远追随自动化法则。Automating shapes smarter future.
在一个 Python 项目的开发过程中可能会做的事情:编译、手动或自动化测试、部署环境配置等。这些操作是重复而枯燥的,如果是人工来一项一项做,会浪费大量时间,需要有一个高效的工具来帮我们完成。
这篇文章中我们用可执行的步骤告诉大家,如何用 flow.ci 从 GitHub 到 Slack 搭建简单的 Python 自动化持续集成。
flow.ci 是融入了 workflow 机制的持续集成(CI)服务,也可以理解为自动化流程平台,除了集成代码、编译、测试之外,还可以集成常用的工具、灵活自定义流程。1 分钟即可完成开发测试环境搭建,开启第一个 Build。
在 flow.ci,我们把项目的开发工作流称为 flow ,每个 flow 由触发器和插件构成。系统根据不同的语言和环境提供对应的 flow 模版,触发器和插件。Flow 的自定义非常简单,只需要 One-Click 即可添加你需要的插件。它可能是一个代码静态分析检测工具 (比如 Eslint),可能是一个数据库(比如 Mysql/MongoDB/Redis),也可能是一个消息通知插件(比如 邮件/Slack)等。
更专注于代码,其他的琐事交给 flow.ci 自动化完成吧 :)
首先,开始创建项目:
选择项目语言 Python ,可以看到默认的 flow 模板 ,包括 Intialize - MySQL Database - Git Clone - Cache - Install - Test 的流程。
选择项目语言的版本,除了 Python 外,flow.ci 提供 Node.js , Ruby , PHP , Java for Android 的多语言、多版本的开发测试环境。
后续会支持更多语言。
在环境和语言等初始配置完成后,flow.ci 会提供一套 基本 flow 模版,内含通用流程插件和流程触发设置。如果你有定制化的需求,点击图中 “+” 或者 “删除”“编辑”,实时设置就可以。
到这里,点击 slack notification 插件,输入 Slack Webhook 地址,就可以实时接收上线的任何消息通知。除了 Slack 等团队沟通插件,你还可以自由添加更多的插件。
实现这套自动化流程之后,只需要开发新功能,提交代码即可。图为跑完整个持续集成流程,健康的项目状态。
繁琐可循的任务就应该工具化自动化,这是程序员们的不懈追求。如果你也想快速搭建 Python 项目的自动化持续集成,来 http://flow.ci 首页提交申请,邀请码随后会发送到邮箱。
期待你的反馈。
Happy Building!
flow.ci team