应用程序的部署方法、部署系统、电子设备及存储介质与流程

文档序号:33647539发布日期:2023-03-29 05:18阅读:46来源:国知局
应用程序的部署方法、部署系统、电子设备及存储介质与流程

1.本技术涉及应用程序部署技术领域,特别是应用程序的部署方法、部署系统、电子设备及存储介质。


背景技术:

2.目前,应用程序在发布新版本前,需要开发人员人为将最新版本的代码打包成压缩包,以及将压缩包提交版本控制系统,再从版本控制系统将新版本应用程序部署至应用程序发布系统,以完成对应用程序的发布。
3.但是,由于存在人为忘记上传新版本应用程序至版本控制系统的问题,容易导致部署至应用程序发布系统的应用程序不一定是最新的,且每次发布新版本均需要进行人工打包,步骤繁琐。


技术实现要素:

4.本技术提供一种应用程序的部署方法、部署系统、电子设备及存储介质,能够保证版本控制系统和应用程序发布系统中的应用程序版本一致,以及避免人工进行压缩、部署等操作,提高部署效率。
5.为了解决上述技术问题,本技术采用的一个技术方案是:提供一种应用程序的部署方法,该方法包括:获取应用程序对应的代码清单;从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径;按照第一路径从版本控制系统中获取对应的代码文件;对代码文件进行压缩,并将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
6.其中,对代码文件进行压缩之前,包括:对代码文件进行检测。
7.其中,对代码文件进行压缩,包括:对检测通过的代码文件进行压缩。
8.其中,对代码文件进行检测,包括:获取代码文件中目标参数;检测目标参数是否被定义为固定值;若是,则确定目标参数检测不通过;若否,则确定目标参数检测通过。
9.其中,对检测通过的代码文件进行压缩之后,包括:判断压缩后的代码文件的数量与第一路径的数量是否一致;若是,则执行将压缩后的代码文件按照待存储路径部署至应用程序发布系统中的步骤。
10.其中,获取应用程序对应的代码清单之前,包括:响应于用户的操作指令,将编写好的代码清单保存至版本控制系统。
11.其中,代码文件为从分支文件;将压缩后的代码文件按照待存储路径部署至应用程序发布系统中之后,包括:按照第一路径从版本控制系统中获取对应的代码文件,并将代码文件合并至版本控制系统中的主分支文件中。
12.其中,获取应用程序对应的代码清单,包括:获取版本控制系统中的主分支文件以及应用程序发布系统中的应用程序;在主分支文件与应用程序发布系统中的应用程序一致
时,获取应用程序对应的代码清单。
13.为了解决上述技术问题,本技术采用的另一技术方案是:提供一种应用程序的部署系统,该部署系统包括部署引擎、版本控制系统和应用程序发布系统。
14.其中,部署引擎用于获取应用程序对应的代码清单;以及从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径;以及按照第一路径从版本控制系统中获取对应的代码文件;以及对代码文件进行压缩,并将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
15.为了解决上述技术问题,本技术采用的另一技术方案是:提供一种电子设备,该电子设备包括存储器和处理器,其中存储器用于存储计算机程序,处理器用于执行计算机程序以实现如上述所述的应用程序的部署方法。
16.为了解决上述技术问题,本技术采用的另一技术方案是:提供一种计算机可读储存介质,该计算机可读储存介质中存储有计算机程序,计算机程序在被处理器执行时用于实现如上述所述的应用程序的部署方法。
17.本技术的有益效果是:区别于现有技术,本技术提供的应用程序的部署方法通过获取应用程序对应的代码清单,并从代码清单中获取第一路径和第二路径的方式,利用代码清单强制性的让应用程序对应的代码文件先上传至版本控制系统,以避免人为漏传的问题,进一步保证自动化压缩的代码文件为最新的应用程序代码文件,进而实现在应用程序发布系统中的部署,能够保证版本控制系统和应用程序发布系统中的应用程序版本一致,以及避免人工进行压缩、部署等操作,提高部署效率。
附图说明
18.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
19.图1是本技术提供的应用程序部署方法第一实施例的流程示意图;
20.图2是本技术提供的应用程序部署方法第二实施例的流程示意图;
21.图3是本技术提供的应用程序部署方法第三实施例的流程示意图;
22.图4是本技术提供的应用程序部署方法第四实施例的流程示意图;
23.图5是本技术提供的应用程序部署系统一实施例的结构示意图;
24.图6是本技术提供的电子设备一实施例的结构示意图;
25.图7是本技术提供的计算机可读储存介质一实施例的结构示意图。
具体实施方式
26.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
27.参阅图1,图1是本技术提供的应用程序部署方法第一实施例的流程示意图,该方法包括:
28.步骤11:获取应用程序对应的代码清单。
29.代码清单可以是一种记录代码的文件,也可以是记录代码存放路径的文件。在一些实施例中,代码清单是job list(工作清单)代码清单,该job list代码清单是一个csv文件,csv文件可以基于终端设备使用记事本或excel打开。
30.在一些实施例中,代码清单可以是用户预先编写好的,可以响应于用户的操作指令,将编写好的代码清单保存至版本控制系统。且该代码清单的内容支持更改,支持用户进行新增内容、删除内容和修改内容等操作。
31.可选地,版本控制系统可以是git、rcs、cvs或svn,这里不作限制。
32.步骤12:从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径。
33.具体地,第一路径是代码文件在版本控制系统的存储路径;第二路径是代码文件在应用程序发布系统中的待存储路径,且值得注意的是,第一路径和第二路径是对应关联的。
34.第一路径是代码文件在版本控制系统中存储后得到的路径,第二路径是代码文件将要在应用程序发布系统中存储的路径。在将代码文件上传至版本控制系统后,可以将其对应的第一路径编写至代码清单中,然后编写该代码文件在应用程序发布系统中对应的第二路径,以便于按照第二路径部署代码文件。
35.在一些实施例中,版本控制系统是git,第一路径是代码文件在git上的存储路径,第二路径是代码文件在应用程序发布系统上的存储路径。
36.如,版本控制系统是git,第一路径是iml/iml_agt_klgc_proj_scale_dtl_clean_w/pdm_bat_iml_agt_klgc_proj_scale_dtl_clean_w_mid01.sh,对应的第二路径是iml/iml_agt_klgc_proj_scale_dtl_clean_w/。
37.又如,版本控制系统是git,第一路径是iml/iml_agt_klgc_proj_scal e_dtl_clean_w/pdm_bat_iml_agt_klgc_proj_scale_dtl_clean_w.sh,对应的第二路径是iml/iml_agt_klgc_proj_scale_dtl_clean_w/。
38.步骤13:按照第一路径从版本控制系统中获取对应的代码文件。
39.其中,一个应用程序由至少一个代码文件构成,因此,代码清单中可以存储多个代码文件对应的第一路径和第二路径。
40.在一些实施例中,上述代码文件可以是增量文件,可以通过部署增量文件至原应用程序中,以增加、修改和/或删除原应用程序中相应功能。
41.在一些实施例中,通过遍历代码清单,以获取与应用程序的代码文件对应的第一路径,接着基于第一路径,从版本控制系统获取对应的代码文件。
42.步骤14:对代码文件进行压缩,并将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
43.具体地,将代码文件压缩成tar.gz压缩包,并将tar.gz压缩包存储至应用程序发布系统中,以使应用程序发布系统调用tar.gz压缩包,对tar.gz压缩包进行编译、安装、执
行,实现对应用程序的版本发布等动作。
44.在一些实施例中,可以通过获取版本控制系统中的主分支文件以及应用程序发布系统中的应用程序,在主分支文件与应用程序发布系统中的应用程序一致时,执行步骤11。通过比较主分支文件与应用程序发布系统中的应用程序,能够确保在发布新版本之前主分支文件与应用程序发布系统中的应用程序是一致的,进而保证后续发布的新版本能够适配应用程序发布系统中的应用程序。
45.其中,版本控制系统中的主分支能够对其余从分支的代码文件进行合并。
46.在一些实施例中,代码文件是从分支文件,将压缩后的代码文件按照待存储路径部署至应用程序发布系统中之后,可以按照第一路径从版本控制系统中获取对应的代码文件,并将代码文件合并至版本控制系统中的主分支文件中。
47.具体地,对代码文件进行压缩后得到的tar.gz压缩包可以按照代码清单中的第二路径,将tar.gz压缩包部署到应用程序发布系统上,接着基于代码文件在git上的存储路径获取代码文件,并将代码文件合并至git的master上。
48.本实施例通过获取应用程序对应的代码清单,并从代码清单中获取第一路径和第二路径的方式,利用代码清单强制性的让应用程序对应的代码文件先上传至版本控制系统,以避免人为漏传的问题,进一步保证自动化压缩的代码文件为最新的应用程序代码文件,进而实现在应用程序发布系统中的部署,能够保证版本控制系统和应用程序发布系统中的应用程序版本一致,以及避免人工进行压缩、部署等操作,提高部署效率。
49.参阅图2,图2是本技术提供的应用程序部署方法第二实施例的流程示意图,该方法包括:
50.步骤21:获取应用程序对应的代码清单。
51.步骤22:从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径。
52.步骤23:按照第一路径从版本控制系统中获取对应的代码文件。
53.步骤21至步骤23可以与上述实施例具备相同或相似的技术特征,这里不再赘述。
54.步骤24:对代码文件进行检测。
55.在一些实施例中,通过获取代码文件中目标参数,以检测目标参数是否被定义为固定值。若是,则确定目标参数检测不通过;若否,则确定目标参数检测通过。其中,目标参数可以根据实际情况进行定义。
56.可以利用部署程序对代码文件进行扫描,以确定代码文件是否存在参数或配置为固定值的情况,如验证是否存在数据库的库名为固定值。
57.在一些实施例中,确认参数或配置存在为固定值的情况时,可以生成相应的提示或警示信息,以提示用户对参数或配置的检测结果是不通过。此时用户可以将参数或配置更改为变量,以改变固定值的情况,实现检测结果是通过的目的。
58.步骤25:对检测通过的所述代码文件进行压缩,并将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
59.步骤22可以上述实施例具备相同或相似的技术特征,这里不再赘述。
60.本实施例通过获取应用程序对应的代码清单,并从代码清单中获取第一路径和第
二路径的方式,利用代码清单强制性的让应用程序对应的代码文件先上传至版本控制系统,以避免人为漏传的问题,进一步保证自动化压缩的代码文件为最新的应用程序代码文件,进而实现在应用程序发布系统中的部署,能够保证版本控制系统和应用程序发布系统中的应用程序版本一致,以及避免人工进行压缩、部署等操作,提高部署效率。进一步,在压缩之前对代码文件进行检验,进而对检验通过的代码文件进行压缩,可以避免代码文件参数有误,部署至应用程序发布系统后出现问题,然后需要重新部署的现象发生,提高部署效率。
61.参阅图3,图3是本技术提供的应用程序部署方法第三实施例的流程示意图,该方法包括:
62.步骤31:获取应用程序对应的代码清单。
63.步骤32:从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径。
64.步骤33:按照第一路径从版本控制系统中获取对应的代码文件。
65.步骤34:对代码文件进行检测。
66.步骤35:对检测通过的所述代码文件进行压缩。
67.步骤31至步骤35可以与上述实施例具备相同或相似的技术特征,这里不再赘述。
68.步骤36:判断压缩后的代码文件的数量与第一路径的数量是否一致。
69.其中,一个应用程序由至少一个代码文件构成,因此,代码清单中可以存储多个代码文件对应的第一路径和第二路径。因此,压缩后的代码文件的数量存在多个。
70.在一些实施例中,可以校验tar.gz压缩包的脚本数量和job list代码清单中第一路径的数量是否一致,以此确定是否可以将tar.gz压缩包部署至应用程序发布系统。
71.若是,则执行步骤37。
72.步骤37:将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
73.区别于现有技术,本技术提供的应用程序部署方法可以将压缩后的代码文件可以部署至应用程序发布系统,以使应用程序发布系统对应用程序进行版本发布等操作,且将压缩后的代码文件部署至应用程序发布系统前需要对压缩后的代码文件进行验证,以确定压缩后的代码文件是否符合要求,可以避免应用程序发布系统对应用程序进行版本发布等操作时出现脚本错误等问题。
74.参阅图4,图4是本技术提供的应用程序部署方法第四实施例的流程示意图,该方法包括:
75.步骤41:响应于用户的操作指令,将编写后代码清单保存至版本控制系统。
76.步骤42:获取应用程序对应的代码清单。
77.步骤43:从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统中的已存储路径,第二路径表示代码文件在应用程序发布系统中的待存储路径。
78.步骤44:按照第一路径从版本控制系统中获取对应的代码文件。
79.步骤45:对代码文件进行检测。
80.步骤46:对检测通过的所述代码文件进行压缩。
81.步骤47:判断压缩后的代码文件的数量与第一路径的数量是否一致。
82.若是,则执行步骤48。
83.步骤48:将压缩后的代码文件按照待存储路径部署至应用程序发布系统中。
84.步骤49:按照第一路径从版本控制系统中获取对应的代码文件,并将代码文件合并至版本控制系统中的主分支文件中。
85.将代码文件合并至版本控制系统中的主分支文件中,以保证主分支文件中的代码文件是最新的,以此使版本控制系统中的主分支文件中的代码文件和应用程序发布系统中的版本一致。
86.步骤41至步骤49可以与上述任一实施例具备相同或相似的技术特征,这里不再赘述。
87.区别于现有技术,本技术提供的应用程序部署方法可以自动化实现对代码文件进行压缩,且压缩后的代码文件可以部署至应用程序发布系统前,对压缩后的代码文件进行验证,以将验证通过的压缩后的代码文件部署至应用程序发布系统,使得应用程序发布系统可以正常对应用程序进行版本发布等操作,避免人工进行压缩、部署、二次处理等操作,节省时间。
88.参阅图5,图5是本技术提供的应用程序部署系统一实施例的结构示意图,该应用程序部署系统50包括部署引擎501、版本控制系统502和应用程序发布系统503。
89.其中,部署引擎501用于获取应用程序对应的代码清单,以及从代码清单中获取第一路径和第二路径,其中,第一路径表示应用程序对应的代码文件在版本控制系统502中的已存储路径,第二路径表示代码文件在应用程序发布系统503中的待存储路径;部署引擎501还用于按照第一路径从版本控制系统502中获取对应的代码文件,以及对代码文件进行压缩,并将压缩后的代码文件按照待存储路径部署至应用程序发布系统503中。
90.该应用程序部署系统50能够利用部署引擎501、版本控制系统502和应用程序发布系统503实现上述任一实施例的技术方案。
91.参阅图6,图6是本技术提供的电子设备一实施例的结构示意图,该电子设备60包括存储器601和处理器602,其中,存储器601用于存储计算机程序,处理器602用于执行计算机程序以实现如上述任一实施例所述的应用程序部署方法,这里不再赘述。
92.参阅图7,图7是本技术提供的计算机可读储存介质一实施例的结构示意图,该计算机可读储存介质70用于存储计算机程序701,计算机5程序701在被处理器执行时用于实现如上述任一实施例所述的应用程序部署方法,这里不再赘述。
93.综上所述,本技术提供的应用程序的部署方法通过获取应用程序对应的代码清单,并从代码清单中获取第一路径和第二路径的方式,利用
94.代码清单强制性的让应用程序对应的代码文件先上传至版本控制系统,0以避免人为漏传的问题,进一步保证自动化压缩的代码文件为最新的应
95.用程序代码文件,进而实现在应用程序发布系统中的部署,能够保证版本控制系统和应用程序发布系统中的应用程序版本一致,以及避免人工进行压缩、部署等操作,提高部署效率。
96.本技术涉及的处理器可以称为cpu(central processing unit,中央5处理单元),可能是一种集成电路芯片,还可以是通用处理器、数字信号处理器(dsp)、专用集成电路
(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
97.本技术使用的存储介质包括u盘、移动硬盘、只读存储器(rom,
98.read-only memory)、随机存取存储器(ram,random access memory)0或者光盘等各种可以存储程序代码的介质。
99.以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1