开发环境
dev-env的Python项目详细描述
这个回购协议最初是作为一种集中和记录 配置开发环境(dev env)的过程。随着时间的推移 很明显,集中其他公共部门 开发工具和实用程序。此repo现在包含工具、脚本 以及实用程序:
- 使用 Docker确信 开发和ci环境是相同的
- 自动切割释放
- 简化集成测试
此repo中的工具、脚本和实用程序假设用户遵循 预定义的模式和实践集。
关键概念
- 项目托管在公共或私有github repo中
- 在项目的根目录下是一个名为cfg4dev的文本文件 配置项目的dev env
- 在git克隆repo之后,开发人员通过 正在执行source cfg4dev
- dev-env将dev env docker映像发布到Docker Hub
- Docker图片是Docker通过 cfg4dev
- CircleCI可以使用dev-envdocker 图像为docker executor
- shell and python scripts 在开发人员的计算机上运行以访问打包在 Docker图像
- 脚本由cfg4dev
- 在项目的根目录下是一个名为CHANGELOG.md的文本文件,它是 由开发人员手动管理,以记录项目的关键更改
假设
- 开发人员使用macOS
- dev-env以shell和python为中心的项目为目标
- 如果一个项目的repo被称为abc-def-ghi,并且该项目生成 一个python包,该包名为abc_def_ghi,并且 包的源代码位于项目的 根目录名为abc_def_ghi-此外, abc_def_ghi目录包含名为__init__.py的文件 至少包含一行 __version__ = '1.2.0',它声明了python包的版本
- 用于构建项目开发环境的脚本和dockerfile 位于项目根目录的子目录中,名为 dev_env
- 项目使用分支策略,如
- 所有开发都在master分支上完成(可以选择使用 feature branches)
- 使用Semantic Versioning
- 对于每个版本,都会从master创建一个名为 release-<version>
- CHANGELOG.md遵循预定义的格式/结构
参考/灵感
下一步
- 看看shell and python scripts 评估dev-env能力
- here’s 如何开始使用dev-env 的说明
- 看一看 thisGithub回购 说明了如何使用dev-env
- 如果您想帮助贡献给dev-env,请参见 this