使用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 相关文章推荐
高性能web服务器框架Tornado简单实现restful接口及开发实例
Jul 16 Python
Python入门教程之if语句的用法
May 14 Python
使用Python读写及压缩和解压缩文件的示例
Jul 08 Python
Python爬虫:通过关键字爬取百度图片
Feb 17 Python
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
Python爬虫实现全国失信被执行人名单查询功能示例
May 03 Python
Python使用win32 COM实现Excel的写入与保存功能示例
May 03 Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 Python
利用Pyhton中的requests包进行网页访问测试的方法
Dec 26 Python
使用python切片实现二维数组复制示例
Nov 26 Python
Tensorflow与Keras自适应使用显存方式
Jun 22 Python
用Python爬取LOL所有的英雄信息以及英雄皮肤的示例代码
Jul 13 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
日本十大科幻动漫 宇宙骑士垫底,第一已成经典
2020/03/04 日漫
首页四格,首页五格For6.0(GBK)(UTF-8)[12种组合][9-18][版主安装测试通过]
2007/09/24 PHP
PHP批量生成缩略图的代码
2008/07/19 PHP
PHP去掉从word直接粘贴过来的没有用格式的函数
2012/10/29 PHP
PHP根据IP地址获取所在城市具体实现
2013/11/27 PHP
php策略模式简单示例分析【区别于工厂模式】
2019/09/25 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
2007/02/22 Javascript
用javascript实现读取txt文档的脚本
2007/07/20 Javascript
javascript 数组的方法集合
2008/06/05 Javascript
javascript 面向对象编程 聊聊对象的事
2009/09/17 Javascript
Jquery倒数计时按钮setTimeout的实例代码
2013/07/04 Javascript
浅谈jQuery中的事件
2015/03/23 Javascript
浅谈Javascript数组的使用
2015/07/29 Javascript
在easyUI开发中,出现jquery.easyui.min.js函数库问题的解决办法
2015/09/11 Javascript
原生JS实现轮播效果+学前端的感受(防止走火入魔)
2016/08/21 Javascript
js中的闭包实例展示
2018/11/01 Javascript
javascript中数组的常用算法深入分析
2019/03/12 Javascript
一个小示例告诉你Python语言的优雅之处
2014/07/04 Python
SVM基本概念及Python实现代码
2017/12/27 Python
对Python使用mfcc的两种方式详解
2019/01/09 Python
Python实现制度转换(货币,温度,长度)
2019/07/14 Python
浅谈keras保存模型中的save()和save_weights()区别
2020/05/21 Python
python json.dumps() json.dump()的区别详解
2020/07/14 Python
python实现取余操作的简单实例
2020/08/16 Python
使用Python封装excel操作指南
2021/01/29 Python
移动端html5模拟长按事件的实现方法
2018/09/30 HTML / CSS
英国最大的户外商店:Go Outdoors
2019/04/17 全球购物
物业总经理岗位职责
2014/02/28 职场文书
拓展训练激励口号
2014/06/17 职场文书
党性锻炼的心得体会
2014/09/03 职场文书
女生抽烟检讨书
2014/10/05 职场文书
开票员岗位职责
2015/02/12 职场文书
大学生青年志愿者活动总结
2015/05/06 职场文书
2019年妇科护士的自我鉴定(3篇)
2019/09/26 职场文书
如何解决flex文本溢出问题小结
2022/07/15 HTML / CSS