使用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 import引入不同路径下的模块
Jul 11 Python
python如何派生内置不可变类型并修改实例化行为
Mar 21 Python
python 显示数组全部元素的方法
Apr 19 Python
python文件读写代码实例
Oct 21 Python
Python中url标签使用知识点总结
Jan 16 Python
Python基于类路径字符串获取静态属性
Mar 12 Python
python给视频添加背景音乐并改变音量的具体方法
Jul 19 Python
Python map及filter函数使用方法解析
Aug 06 Python
python如何利用Mitmproxy抓包
Oct 10 Python
python中pyplot基础图标函数整理
Nov 10 Python
opencv用VS2013调试时用Image Watch插件查看图片
Jul 26 Python
Python中np.random.randint()参数详解及用法实例
Sep 23 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简单对象与数组的转换函数代码(php多层数组和对象的转换)
2011/05/18 PHP
php双层循环(九九乘法表)
2017/10/23 PHP
说说掌握JavaScript语言的思想前提想学习js的朋友可以看看
2009/04/01 Javascript
jQuery.ajax 用户登录验证代码
2010/10/29 Javascript
javascript 正则表达式相关应介绍
2012/11/27 Javascript
javascript函数作用域学习示例(js作用域)
2014/01/13 Javascript
使用jquery实现IE下按backspace相当于返回操作
2014/03/18 Javascript
jquery模拟LCD 时钟的html文件源代码
2014/06/16 Javascript
javascript多行字符串的简单实现方式
2015/05/04 Javascript
javascript中setAttribute()函数使用方法及兼容性
2015/07/19 Javascript
easyui导出excel无法弹出下载框的快速解决方法
2016/11/10 Javascript
node.js中express中间件body-parser的介绍与用法详解
2017/05/23 Javascript
在vue-cli脚手架中配置一个vue-router前端路由
2017/07/03 Javascript
vue组件 $children,$refs,$parent的使用详解
2017/07/31 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
vue 组件使用中的一些细节点
2018/04/25 Javascript
angularjs获取到My97DatePicker选中的值方法
2018/10/02 Javascript
JavaScript数据结构与算法之基本排序算法定义与效率比较【冒泡、选择、插入排序】
2019/02/21 Javascript
Node.js + express实现上传大文件的方法分析【图片、文本文件】
2019/03/14 Javascript
vue实现固定位置显示功能
2019/05/30 Javascript
JavaScript实现图片伪异步上传过程解析
2020/04/10 Javascript
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
HTML中使用python屏蔽一些基本功能的方法
2017/07/07 Python
Python竟能画这么漂亮的花,帅呆了(代码分享)
2017/11/15 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
python实现flappy bird游戏
2018/12/24 Python
详解Django3中直接添加Websockets方式
2020/02/12 Python
Python OrderedDict字典排序方法详解
2020/05/21 Python
如何将anaconda安装配置的mmdetection环境离线拷贝到另一台电脑
2020/10/15 Python
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
Skyscanner台湾:全球知名的旅行比价引擎
2018/07/01 全球购物
财务会计实习报告体会
2013/12/20 职场文书
播音主持专业个人自我评价
2014/01/09 职场文书
初中教师业务学习材料
2014/05/12 职场文书
小学国旗下的演讲稿
2014/08/28 职场文书
阿凡达观后感
2015/06/10 职场文书