【自动化持续集成部署平台】持续集成自动化平台发布了-技术栈(python-flask+vue3+mysql+linux)

2 篇文章 0 订阅
1 篇文章 0 订阅

前言

好久没有发布作品了,最近完成了一个也有利于开发、测试同学的一个自动化部署平台,方便大家在工作中的效率,以前经常是使用jenkins发布部署项目及运行自动化项目,现在可以在平台上一键式部署发布项目啦!

系统模块

一、登录模块:主要为用户提供登录入口
在这里插入图片描述
二、首页模块:主要查看部署发布统计情况及查看allure报告
在这里插入图片描述
查看报告:
在这里插入图片描述

三、CI/CD持续集成模块:主要进行前端(例如:vue)、后端(例如:java)、自动化测试(例如python)的发布部署
在这里插入图片描述

四、权限管理模块:主要进行权限的分配
在这里插入图片描述

五、基础配置模块:主要进行项目的基础配置
在这里插入图片描述

技术栈介绍

项目包含的技术栈:
后端:python+flask(对于熟悉python的同学也可以选择Django,在这里我就是使用了flask进行开发了)
前端:vue3+ts+vite+pinia(本来想使用vue2+webpack+vuex进行开发,后来想着还是直接使用vue3,也应该是以后未来一段时间的趋势,尤其是ts学习有利于前端开发团队的合作)
数据库:mysql(需要具备数据库的增删改查基本操作、左右内连接等操作)
服务器:centos(需要具备一定的linux基本命令操作及熟悉docker/k8s最好)

主要功能简介

1、作用:打造一款持续化集成自动化平台,方便运维、开发、测试人员:可以进行前后端打包发布、ui/api自动化一键式运行部署生成allure报告!
2、目前也是能够满足项目使用,后续再进行其他方面的功能扩充吧~

后端的代码框架

在这里插入图片描述

前端的代码框架

在这里插入图片描述

总结

一、数据库方面:数据库的设计很重要,表与表之间的关联关系,前期最好想清楚,莫不要直接上手就是一顿咔咔写;
二、linux服务器方面:这种平台和linux打交道的地方很多,所以熟悉linux的各种基本操作是必不可少的,在此期间也遇到了很多不是代码本身逻辑上的问题,是一些命令上的坑;
三、后端方面:需要考虑的就是该平台与一键式部署的项目不在同一个服务器部署,由于是后端给Linux下发操作命令,会导致在Linux上可以手动执行的命令,但是后端给下发时,却不生效的就很emo;
四、前端方面:真心建议使用ts,团队开发很方便的多多

学习圈友

后续有时间了我也会对该平台的前端、后端、自动化测试进行系统的讲解,有想法的同学也可以私信我,有什么问题可以给我留言,欢迎共同进步!

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了实现课程电商网站,我们可以使用Flask框架和MySQL数据库来构建网站,并使用PayPal API来处理付款。以下是一些步骤: 1. 首先,我们需要使用FlaskMySQL来构建网站。我们可以使用Flask的蓝图来组织我们的代码,并使用MySQL来存储我们的数据。 2. 接下来,我们需要使用PayPal API来处理付款。我们可以使用PayPal的Vue.js包装组件vue-paypal-checkout来实现这一点。我们可以将这个组件添加到我们的网站中,并使用它来处理付款。 3. 我们还需要使用python-dotenv和flask-cli自定义命令来管理我们的环境变量和启动我们的应用程序。我们可以使用python-dotenv来加载我们的环境变量,并使用flask-cli自定义命令来启动我们的应用程序。 ```python # 示例代码 from flask import Flask from flask_mysqldb import MySQL from paypalcheckoutsdk.core import PayPalHttpClient, SandboxEnvironment from paypalcheckoutsdk.orders import OrdersCreateRequest app = Flask(__name__) # 配置MySQL数据库 app.config['MYSQL_HOST'] = 'localhost' app.config['MYSQL_USER'] = 'root' app.config['MYSQL_PASSWORD'] = 'password' app.config['MYSQL_DB'] = 'mydatabase' mysql = MySQL(app) # 配置PayPal API client_id = 'YOUR_CLIENT_ID' client_secret = 'YOUR_CLIENT_SECRET' environment = SandboxEnvironment(client_id=client_id, client_secret=client_secret) client = PayPalHttpClient(environment) # 创建订单 request = OrdersCreateRequest() request.prefer('return=representation') request.request_body({ "intent": "CAPTURE", "purchase_units": [{ "amount": { "currency_code": "USD", "value": "100.00" } }] }) response = client.execute(request) print(response.result.id) # 自定义命令 @app.cli.command() def init_db(): cur = mysql.connection.cursor() cur.execute('CREATE TABLE IF NOT EXISTS courses (id INT, name VARCHAR(255), price FLOAT)') mysql.connection.commit() cur.close() print('Initialized the database.') # 蓝图 from flask import Blueprint bp = Blueprint('courses', __name__, url_prefix='/courses') @bp.route('/') def index(): cur = mysql.connection.cursor() cur.execute('SELECT * FROM courses') courses = cur.fetchall() cur.close() return render_template('courses/index.html', courses=courses) @bp.route('/<int:id>') def show(id): cur = mysql.connection.cursor() cur.execute('SELECT * FROM courses WHERE id = %s', [id]) course = cur.fetchone() cur.close() return render_template('courses/show.html', course=course) app.register_blueprint(bp) if __name__ == '__main__': app.run() ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值