一种基于web的交互式应用部署交付方法及系统技术方案

技术编号:22075239 阅读:20 留言:0更新日期:2019-09-12 13:59
本发明专利技术提供一种基于web的交互式应用部署交付方法,包括在用户使用系统登录界面进行登录时,对用户的身份信息进行验证授权;且在登录系统后,自动从数据库中读取授权给该用户的项目权限表并展示到系统界面上;从展示的项目权限表中选择需要构建的项目,根据选择的项目自动拉取源代码仓库中的代码进行编译,将编译后的应用代码包分发给应用服务器集群中对应的服务器,并生成分发结果;根据分发结果自动登录到对应的服务器,并自动重启应用程序。本发明专利技术还提供一种方法所对应的系统。本发明专利技术优点:可以使软件研发团队进一步缩减软件交付时间,提高代码的部署效率,提高版本回滚的能力,并降低部署的错误率。

A Web-based Interactive Application Deployment Delivery Method and System

【技术实现步骤摘要】
一种基于web的交互式应用部署交付方法及系统
本专利技术涉及计算机领域,特别涉及一种基于web的交互式应用部署交付方法及系统。
技术介绍
随着企业信息化软件产品线的不断增多,软件架构也从最初的单应用转变为分布式微服务应用,在产品线增加及软件架构日新月异的情况下,如何保证第一时间交付软件产品,是企业及研发人员所面临的共同挑战。为了确保软件产品能够快速交付,除了前期精准的软件需求分析外,对研发人员对软件功能的开发迭代、部署、测试验证也需要做进一步的规范处理。在传统情况下,研发人员在完成功能迭代后,为了进行快速验证,需要运维人员介入打包、部署等环节,不仅重复性高,且容易出现人为配置错误。同时,现今软件开发一般有多个团队协作完成,每日软件功能迭代次数频繁,若按传统打包部署模式将严重影响团队的软件交付时间,同时也会增加运维人工成本的投入。
技术实现思路
本专利技术要解决的技术问题之一,在于提供一种基于web的交互式应用部署交付方法,通过该方法来实现进一步缩减软件交付时间,提高代码的部署效率。本专利技术是这样实现技术问题之一的:一种基于web的交互式应用部署交付方法,所述方法包括如下步骤:步骤S1、在用户使用系统登录界面进行登录时,对用户的身份信息进行验证授权;且在登录系统后,自动从数据库中读取授权给该用户的项目权限表并展示到系统界面上;步骤S2、从展示的项目权限表中选择需要构建的项目,根据选择的项目自动拉取源代码仓库中的代码进行编译,将编译后的应用代码包分发给应用服务器集群中对应的服务器,并生成分发结果;步骤S3、根据分发结果自动登录到对应的服务器,并自动重启应用程序。进一步地,所述方法还包括:步骤S4、收集整个过程中产生的所有日志信息,并将所有的日志信息合并成一个日志文件,并输出到本地工作目录的文件夹中。进一步地,所述步骤S1具体包括:步骤S11、在系统中内置一管理员,并使用管理员的账号登录到系统后台对新用户进行授权操作,具体包括:在创建一新用户时,由管理员对该新用户授权可操作的项目限权;从数据库中读取表单表,并根据该新用户的用户信息填写表单表;在表单表填写完成后,将该新用户的用户名以及密码写入到后台数据库的用户密码表中,将该新用户可操作的限权信息以及项目名写入到后台数据库的项目权限表中;步骤S12、用户在系统登录界面中输入用户名和密码进行登录时,从数据库的用户密码表中读取字段id和字段pwd,并将读取的字段id和字段pwd分别与输入的用户名和密码进行比对,生成比对结果并写入到数据库的日志查询表中,且如果比对结果为一致,则进入步骤S13;如果比对结果为不一致,则结束流程;步骤S13、在成功登录系统后,自动从数据库中读取授权给该用户的项目权限表,并将项目权限表中的信息展示到系统界面上。进一步地,所述步骤S2具体包括:步骤S21、从展示的项目权限表中选择需要构建的项目,并对源代码仓库进行扫描;将需要构建的项目的本地代码与源代码仓库中对应项目的最新版本代码进行比对,且如果比对结果为一致,则进入步骤S24;如果比对结果为不一致,则进入步骤S22;或者用户主动从源代码仓库中选择指定版本代码,并进入步骤S22;步骤S22、自动拉取源代码仓库中的最新版本代码或指定版本代码,将最新版本代码或指定版本代码下载至本地,并进入步骤S23;步骤S23、调用第三方插件并依据设定的编译参数对下载的最新版本代码或指定版本代码进行本地编译,之后进入步骤S25;步骤S24、调用第三方插件并依据设定的编译参数对本地代码进行本地编译,之后进入步骤S25;步骤S25、将编译好的应用代码包归类到统一目录下,以便于代码版本的回滚操作;将编译过程中所产生的日志数据输出到系统界面上,同时从源代码仓库中读取差异日志以及版本号并展示到系统界面上;步骤S26、将编译好的应用代码包分发给应用服务器集群中对应的服务器,并生成状态码以对分发结果进行反馈。进一步地,所述步骤S3具体为:获取生成的状态码,且如果状态码的状态为分发成功,则自动登录到对应的服务器,并依据项目名和预先设定的重启命令,自动对应用程序进行重启操作,并将重启操作结果反馈给用户;如果状态码的状态为分发失败,则不执行重启操作,并提示用户分发失败;如果状态码的状态为未知情况,则执行查看发送状态命令,并提示用户检查对应应用代码包的分发情况。本专利技术要解决的技术问题之二,在于提供一种基于web的交互式应用部署交付系统,通过该系统来实现进一步缩减软件交付时间,提高代码的部署效率。本专利技术是这样实现技术问题之二的:一种基于web的交互式应用部署交付系统,所述系统包括验证授权模块、源码编译模块以及进程管理模块;所述验证授权模块,用于在用户使用系统登录界面进行登录时,对用户的身份信息进行验证授权;且在登录系统后,自动从数据库中读取授权给该用户的项目权限表并展示到系统界面上;所述源码编译模块,用于从展示的项目权限表中选择需要构建的项目,根据选择的项目自动拉取源代码仓库中的代码进行编译,将编译后的应用代码包分发给应用服务器集群中对应的服务器,并生成分发结果;所述进程管理模块,用于根据分发结果自动登录到对应的服务器,并自动重启应用程序。进一步地,所述系统还包括日志构建模块;所述日志构建模块,用于收集整个过程中产生的所有日志信息,并将所有的日志信息合并成一个日志文件,并输出到本地工作目录的文件夹中。进一步地,所述验证授权模块具体包括授权单元、验证单元以及权限展示单元;所述授权单元,用于在系统中内置一管理员,并使用管理员的账号登录到系统后台对新用户进行授权操作,具体包括:在创建一新用户时,由管理员对该新用户授权可操作的项目限权;从数据库中读取表单表,并根据该新用户的用户信息填写表单表;在表单表填写完成后,将该新用户的用户名以及密码写入到后台数据库的用户密码表中,将该新用户可操作的限权信息以及项目名写入到后台数据库的项目权限表中;所述验证单元,用于用户在系统登录界面中输入用户名和密码进行登录时,从数据库的用户密码表中读取字段id和字段pwd,并将读取的字段id和字段pwd分别与输入的用户名和密码进行比对,生成比对结果并写入到数据库的日志查询表中,且如果比对结果为一致,则进入所述权限展示单元;如果比对结果为不一致,则结束流程;所述权限展示单元,用于在成功登录系统后,自动从数据库中读取授权给该用户的项目权限表,并将项目权限表中的信息展示到系统界面上。进一步地,所述源码编译模块具体包括代码比对单元、代码下载单元、第一编译单元、第二编译单元、归类展示单元以及收发单元;所述代码比对单元,用于从展示的项目权限表中选择需要构建的项目,并对源代码仓库进行扫描;将需要构建的项目的本地代码与源代码仓库中对应项目的最新版本代码进行比对,且如果比对结果为一致,则进入所述第二编译单元;如果比对结果为不一致,则进入所述代码下载单元;或者用户主动从源代码仓库中选择指定版本代码,并进入所述代码下载单元;所述代码下载单元,用于自动拉取源代码仓库中的最新版本代码或指定版本代码,将最新版本代码或指定版本代码下载至本地,并进入所述第一编译单元;所述第一编译单元,用于调用第三方插件并依据设定的编译参数对下载的最新版本代码或指定版本代码进行本地编译,之后进入所述归类展示单元;所述本文档来自技高网...

【技术保护点】
1.一种基于web的交互式应用部署交付方法,其特征在于:所述方法包括如下步骤:步骤S1、在用户使用系统登录界面进行登录时,对用户的身份信息进行验证授权;且在登录系统后,自动从数据库中读取授权给该用户的项目权限表并展示到系统界面上;步骤S2、从展示的项目权限表中选择需要构建的项目,根据选择的项目自动拉取源代码仓库中的代码进行编译,将编译后的应用代码包分发给应用服务器集群中对应的服务器,并生成分发结果;步骤S3、根据分发结果自动登录到对应的服务器,并自动重启应用程序。

【技术特征摘要】
1.一种基于web的交互式应用部署交付方法,其特征在于:所述方法包括如下步骤:步骤S1、在用户使用系统登录界面进行登录时,对用户的身份信息进行验证授权;且在登录系统后,自动从数据库中读取授权给该用户的项目权限表并展示到系统界面上;步骤S2、从展示的项目权限表中选择需要构建的项目,根据选择的项目自动拉取源代码仓库中的代码进行编译,将编译后的应用代码包分发给应用服务器集群中对应的服务器,并生成分发结果;步骤S3、根据分发结果自动登录到对应的服务器,并自动重启应用程序。2.根据权利要求1所述的一种基于web的交互式应用部署交付方法,其特征在于:所述方法还包括:步骤S4、收集整个过程中产生的所有日志信息,并将所有的日志信息合并成一个日志文件,并输出到本地工作目录的文件夹中。3.根据权利要求1所述的一种基于web的交互式应用部署交付方法,其特征在于:所述步骤S1具体包括:步骤S11、在系统中内置一管理员,并使用管理员的账号登录到系统后台对新用户进行授权操作,具体包括:在创建一新用户时,由管理员对该新用户授权可操作的项目限权;从数据库中读取表单表,并根据该新用户的用户信息填写表单表;在表单表填写完成后,将该新用户的用户名以及密码写入到后台数据库的用户密码表中,将该新用户可操作的限权信息以及项目名写入到后台数据库的项目权限表中;步骤S12、用户在系统登录界面中输入用户名和密码进行登录时,从数据库的用户密码表中读取字段id和字段pwd,并将读取的字段id和字段pwd分别与输入的用户名和密码进行比对,生成比对结果并写入到数据库的日志查询表中,且如果比对结果为一致,则进入步骤S13;如果比对结果为不一致,则结束流程;步骤S13、在成功登录系统后,自动从数据库中读取授权给该用户的项目权限表,并将项目权限表中的信息展示到系统界面上。4.根据权利要求1所述的一种基于web的交互式应用部署交付方法,其特征在于:所述步骤S2具体包括:步骤S21、从展示的项目权限表中选择需要构建的项目,并对源代码仓库进行扫描;将需要构建的项目的本地代码与源代码仓库中对应项目的最新版本代码进行比对,且如果比对结果为一致,则进入步骤S24;如果比对结果为不一致,则进入步骤S22;或者用户主动从源代码仓库中选择指定版本代码,并进入步骤S22;步骤S22、自动拉取源代码仓库中的最新版本代码或指定版本代码,将最新版本代码或指定版本代码下载至本地,并进入步骤S23;步骤S23、调用第三方插件并依据设定的编译参数对下载的最新版本代码或指定版本代码进行本地编译,之后进入步骤S25;步骤S24、调用第三方插件并依据设定的编译参数对本地代码进行本地编译,之后进入步骤S25;步骤S25、将编译好的应用代码包归类到统一目录下,以便于代码版本的回滚操作;将编译过程中所产生的日志数据输出到系统界面上,同时从源代码仓库中读取差异日志以及版本号并展示到系统界面上;步骤S26、将编译好的应用代码包分发给应用服务器集群中对应的服务器,并生成状态码以对分发结果进行反馈。5.根据权利要求4所述的一种基于web的交互式应用部署交付方法,其特征在于:所述步骤S3具体为:获取生成的状态码,且如果状态码的状态为分发成功,则自动登录到对应的服务器,并依据项目名和预先设定的重启命令,自动对应用程序进行重启操作,并将重启操作结果反馈给用户;如果状态码的状态为分发失败,则不执行重启操作,并提示用户分发失败;如果状态码的状态为未知情况,则执行查看发送状态命令,并提示用户检查对应应用代码包的分发情况。6.一种基于web的交互式应用部署交付系统,其特征在于:所述系统包括验证授权模块、源码编译模块以及进程管理模块;所述验证授权模块,用于在用户使用系统登录界面进行登录时,对...

【专利技术属性】
技术研发人员:王国美林先榕
申请(专利权)人:福州慧校通教育信息技术有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1