小python包,方便一些个人项目的部署。
deploymentutils的Python项目详细描述
部署实用工具
这个repo包含一个小python包,以方便一些个人项目的部署。在
概述
此包在fabric上提供了一个薄层,用于执行具有如下状态的命令
- 当前工作目录
- 激活的虚拟环境(尚未实现)
它还试图简化部署/维护同一软件的多个实例,但具有不同的fixture,包括用于测试的本地实例。在
动机
这个包主要是为了通过运行一个简单的python脚本来促进部署任务(例如django应用程序)。 与Ansible等配置管理工具相比,这种方法的功能和可伸缩性要少得多。 然而,对于开发人员来说,这可能更容易理解,从而降低了他们自己部署应用程序的障碍。在
假定目录布局
标有[*]的脚本使用此模块。在
<general project dir>
│
│
├── project-src-repo/ ← official project repo
│ ├── .git/
│ ├── deployment_utils/
│ │ ├── some_files/
│ │ ├── deploy.py [*] ← original deployment script (delivered by the project)
│ │ └── ...
│ ├── django_project/
│ │ ├── settings.py
│ │ └── ...
│ ├── django_app/
│ │ ├── views.py
│ │ └── ...
│ ├── manage.py
│ └── ...
│
├── instance-specific/
│ ├── README.md
│ ├── demo
│ │ ├── .git/
│ │ ├── deploy.py
│ │ ├── project_data
│ │ └── ...
│ ├── production
│ │ ├── .git/
│ │ ├── deploy.py [*]
│ │ ├── project_data
│ │ └── ...
│ ├── testing
│ │ ├── .git/
│ │ ├── deploy.py [*]
│ │ ├── project_data
│ │ └── ...
│ └── ...
│
├── local_testing/ ← contents of this directory are autogenerated
│ ├── deploy.py [*]
│ ├── <appname>_deployment
│ └── ...
.
状态
仍在开发中,尚未进行全面测试。在
已知问题
- 如果由
c.run("some_command")
启动的命令正在读取输入,则调用的python进程将“永远”等待,即直到手动中断。 在
- 项目
标签: