使用django实现一个代码发布系统


Posted in Python onJuly 18, 2019

一 前期说明:

我运行项目的环境是nginx+php,存储代码用的是gitlab,

python版本:3.6 django版本:2.2.1 mysql版本:5.7

二 大体思路

1 需要知道主机的用户名,密码,端口号,

2 需要知道gitlab的用户名和密码

3 我准备把上面两条的信息,存储到当前登录用户的session中。

三实现功能

1 针对单个主机发布和回滚代码

2 可以批量发布和回滚代码

3角色分为管理员,开发,运维,测试,产品几个角色,每个角色返回不同的页面,利用rbac基于角色去实现不同的权限

4 管理员拥有所有权限,可以添加编辑,删除所有的东西

5 分页功能和快速搜索功能

6 当开发申请一个上线单,会邮件通知相关的运维和测试,以及项目负责人去审核。

四效果展示

针对不同的用户展示不同的页面

1 登陆页面展示

使用django实现一个代码发布系统

2 admin用户展示页面

使用django实现一个代码发布系统

3 运维展示页面

使用django实现一个代码发布系统

4 开发展示页面

使用django实现一个代码发布系统

5 测试展示页面

使用django实现一个代码发布系统

6 产品展示页面

使用django实现一个代码发布系统

发布代码

1 找到项目列表,添加你所需要的一个项目,包括仓库地址,选择这个项目要发布到那台主机上面

使用django实现一个代码发布系统

添加效果如下所示:

使用django实现一个代码发布系统

2 添加完成之后,点击上线按钮,如下所示,添加一个指定的分支,然后点击获取代码,

使用django实现一个代码发布系统

3 拉完代码之后,点击发布代码,在发布代码之前,我先去gitlab上面去编辑一个html文件

如下所示:里面还包含了一张北魏时期的地图,哈哈

使用django实现一个代码发布系统

然后我点发布,如下所示,选中你要发布的主机

使用django实现一个代码发布系统

发布成功效果,

使用django实现一个代码发布系统

去浏览器里面验证效果:

使用django实现一个代码发布系统

回滚代码

还是找的项目列表,点击回滚按钮,如下所示:

使用django实现一个代码发布系统

回滚效果

使用django实现一个代码发布系统

使用django实现一个代码发布系统

代码我放到了github上面 ,git clone -b deploy_7-4

第一次写还有很多不足,希望互相学习。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中使用NLTK库实现对词干的提取的教程
Apr 08 Python
python 迭代器和iter()函数详解及实例
Mar 21 Python
tensorflow TFRecords文件的生成和读取的方法
Feb 06 Python
python XlsxWriter模块创建aexcel表格的实例讲解
May 03 Python
Python 创建空的list,以及append用法讲解
May 04 Python
Python玩转Excel的读写改实例
Feb 22 Python
python安装numpy和pandas的方法步骤
May 27 Python
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
Aug 15 Python
python如何使用jt400.jar包代码实例
Dec 20 Python
jupyter lab文件导出/下载方式
Apr 22 Python
python中lower函数实现方法及用法讲解
Dec 23 Python
Pycharm连接远程服务器并远程调试的全过程
Jun 24 Python
python 将字符串中的数字相加求和的实现
Jul 18 #Python
TensorFlow实现简单的CNN的方法
Jul 18 #Python
windows上安装python3教程以及环境变量配置详解
Jul 18 #Python
Django 开发环境配置过程详解
Jul 18 #Python
解决Django中多条件查询的问题
Jul 18 #Python
python openpyxl使用方法详解
Jul 18 #Python
Python Django基础二之URL路由系统
Jul 18 #Python
You might like
ThinkPHP写第一个模块应用
2012/02/20 PHP
回帖脱衣服的图片实现代码
2014/02/15 PHP
PHP使用imagick读取PDF生成png缩略图的两种方法
2014/03/20 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
2016/02/01 PHP
PHP上传文件及图片到七牛的方法
2018/07/25 PHP
PHP中->和=>的含义及使用示例解析
2020/08/06 PHP
论坛特效代码收集(落伍转发-不错)
2006/12/02 Javascript
测试JavaScript字符串处理性能的代码
2009/12/07 Javascript
一个基于jquery的图片切换效果
2010/07/06 Javascript
在Linux上用forever实现Node.js项目自启动
2014/07/09 Javascript
JavaScript改变CSS样式的方法汇总
2015/05/07 Javascript
Underscore.js 1.3.3 中文注释翻译说明
2015/06/25 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
获取JS中网页各种高宽与位置的方法总结
2016/07/27 Javascript
vue2.0+webpack环境的构造过程
2016/11/08 Javascript
Bootstrap3 datetimepicker控件使用实例
2016/12/13 Javascript
JavaScript实现格式化字符串函数String.format
2016/12/16 Javascript
微信小程序 天气预报开发实例代码源码
2017/01/20 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
浅谈Angular 中何时取消订阅
2017/11/22 Javascript
从vue源码解析Vue.set()和this.$set()
2018/08/30 Javascript
[48:56]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 VG vs KG
2018/03/31 DOTA
python根据文件大小打log日志
2014/10/09 Python
python2.7安装图文教程
2018/03/13 Python
Jupyter notebook在mac:linux上的配置和远程访问的方法
2019/01/14 Python
Python实现自定义读写分离代码实例
2019/11/16 Python
浅析matlab中imadjust函数
2020/02/27 Python
如何查看Django ORM执行的SQL语句的实现
2020/04/20 Python
最新大学毕业求职简历的自我评价
2013/10/18 职场文书
成人大专自我鉴定范文
2013/10/19 职场文书
劳资员岗位职责
2013/11/11 职场文书
领班岗位职责范文
2014/02/06 职场文书
主持稿开场白
2015/06/01 职场文书
使用php的mail()函数实现发送邮件功能
2021/06/03 PHP
深入解读Java三大集合之map list set的用法
2021/11/11 Java/Android