使用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 yield 小结和实例
Apr 25 Python
Python使用Flask框架同时上传多个文件的方法
Mar 21 Python
python简单商城购物车实例代码
Mar 15 Python
Python实现的多叉树寻找最短路径算法示例
Jul 30 Python
python numpy数组的索引和切片的操作方法
Oct 20 Python
对Pandas DataFrame缺失值的查找与填充示例讲解
Nov 06 Python
Numpy 理解ndarray对象的示例代码
Apr 03 Python
Python装饰器的应用场景代码总结
Apr 10 Python
Python的信号库Blinker用法详解
Dec 31 Python
pytorch 把图片数据转化成tensor的操作
Mar 04 Python
Python爬虫之爬取某文库文档数据
Apr 21 Python
Python matplotlib绘制条形统计图 处理多个实验多组观测值
Apr 21 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
php生成SessionID和图片校验码的思路和实现代码
2009/03/10 PHP
html静态页面调用php文件的方法
2014/11/13 PHP
php将文本文件转换csv输出的方法
2014/12/31 PHP
Yii遍历行下每列数据的方法
2016/10/17 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
2019/11/23 PHP
jquery.tmpl JQuery模板插件
2011/10/10 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
jQuery实现的登录浮动框效果代码
2015/09/26 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
form表单转Json提交的方法(推荐)
2016/09/23 Javascript
nodejs中全局变量的实例解析
2017/03/07 NodeJs
微信小程序修改swiper默认指示器样式的实例代码
2018/07/18 Javascript
浅谈react-router@4.0 使用方法和源码分析
2019/06/04 Javascript
Javascript Dom元素获取和添加详解
2019/09/24 Javascript
在layui中对table中的数据进行判断(0、1)转换为提示信息的方法
2019/09/28 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
从源码角度来回答keep-alive组件的缓存原理
2021/01/18 Javascript
Python中字符串对齐方法介绍
2015/05/21 Python
通过Python实现自动填写调查问卷
2017/09/06 Python
Python Grid使用和布局详解
2018/06/30 Python
python 统计一个列表当中的每一个元素出现了多少次的方法
2018/11/14 Python
Python爬虫使用浏览器cookies:browsercookie过程解析
2019/10/22 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
Python常用模块logging——日志输出功能(示例代码)
2019/11/20 Python
python读写文件write和flush的实现方式
2020/02/21 Python
马来西亚综合购物网站:Lazada马来西亚
2018/06/05 全球购物
Haggar官网:美国男装品牌
2020/02/16 全球购物
升职自荐信
2013/11/28 职场文书
国际金融专业大学生职业生涯规划书
2013/12/28 职场文书
医药销售求职信范文
2014/02/01 职场文书
大学生秋游活动方案
2014/02/17 职场文书
学生干部学习的自我评价
2014/02/18 职场文书
求职信名称怎么写
2014/05/26 职场文书
酒店端午节活动方案
2014/08/26 职场文书
西柏坡导游词
2015/02/05 职场文书
办公室禁烟通知
2015/04/23 职场文书