CN109634612A - 持续集成方法、***、计算机设备和存储介质 - Google Patents

持续集成方法、***、计算机设备和存储介质 Download PDF

Info

Publication number
CN109634612A
CN109634612A CN201811474798.8A CN201811474798A CN109634612A CN 109634612 A CN109634612 A CN 109634612A CN 201811474798 A CN201811474798 A CN 201811474798A CN 109634612 A CN109634612 A CN 109634612A
Authority
CN
China
Prior art keywords
server
source code
item types
project
management system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201811474798.8A
Other languages
English (en)
Inventor
刘宁
李瑞松
曹子伦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Number Chain Technology Co Ltd
Original Assignee
Zhejiang Number Chain Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Number Chain Technology Co Ltd filed Critical Zhejiang Number Chain Technology Co Ltd
Priority to CN201811474798.8A priority Critical patent/CN109634612A/zh
Publication of CN109634612A publication Critical patent/CN109634612A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请涉及一种持续集成方法、装置、计算机设备和存储介质。所述方法包括:创建项目,并设置项目类型;获取仓库管理***中与项目类型相关的构件;根据项目类型设置源码管理***、仓库管理***以及文件存储***的构建参数;获取源码管理***中的持续更新源码;根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。根据项目类型选择所需要的仓库管理***的构件,能够自动的将项目与构件进行匹配,提高了持续集成的灵活性,进一步能够更加便捷的进行持续集成。

Description

持续集成方法、***、计算机设备和存储介质
技术领域
本申请涉及软件构建技术领域,特别是涉及一种持续集成方法、***、计算机设备和存储介质。
背景技术
持续集成(CI)是一种软件开发实践,即团队开发成员经常集成它们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽早地发现集成错误。还能够防止分支大幅度的偏离主干,如果不经常集成,主干又在不断的更新,会导致最终集成时集成难度大幅度增大。随着公司项目的增多,项目编译打包的重要性也越来越强。之前小规模的时候可以通过本地单机打包,但是随着开发团队扩大、开发人员增加、项目增加,一般会搭建编译打包的***出来。因此,对于大规模项目持续集成是很有必要的。
目前的传统技术,通常利用Jenkins的集成平台,配置好SVN和Gradle插件,实现编译打包,但是无法做到自由选择Nexus的构件,当同一个项目多个迭代一起开发的时候,需要频繁的修改代码来实现动态的配置Nexus的构件,灵活性差。
发明内容
基于此,有必要针对上述技术问题,提供一种具有高灵活性的动态配置项目的持续集成方法、***、计算机设备和存储介质。
一种持续集成方法,所述方法包括:创建项目,并设置项目类型;获取仓库管理***中与项目类型相关的构件;根据项目类型设置源码管理***、仓库管理***以及文件存储***的构建参数;获取源码管理***中的持续更新源码;根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。
在其中一个实施例中,所述创建项目,并设置项目类型之前包括:预设源码管理***、项目构建***、仓库管理***以及文件存储***的基础配置。
在其中一个实施例中,所述获取仓库管理***中与项目类型相关的构件包括:获取仓库管理***中的构件列表;根据构件列表以及项目类型选取与项目类型相关的构件。
在其中一个实施例中,所述获取仓库管理***中的构件列表包括:获取仓库管理***的地址;获取获取仓库管理***的节点数据;根据所述节点数据进行解析,得到第一数据、第二数据以及第三数据。
在其中一个实施例中,所述根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建之后包括:获取构建过程日志,并进行显示。
一种持续集成***,所述***包括:持续集成引擎服务器、源码管理服务器、项目构建服务器、仓库管理服务器以及文件存储服务器;所述源码管理服务器、项目构建服务器、仓库管理服务器以及文件存储服务器分别与所述持续集成引擎服务器连接;所述持续集成引擎服务器,用于创建项目,设置项目类型;并获取仓库管理服务器中与项目类型相关的构件;还用于根据项目类型设置源码管理服务器、仓库管理服务器以及文件存储服务器的构建参数;获取源码管理***中的持续更新源码,根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***;所述源码管理服务器,用于存储用户输入的持续更新的源码;所述项目构建服务器,用于对持续更新的源码进行构件;所述仓库管理服务器,用于下载并存储构件;所述文件存储服务器,用于存储构建产物。
在其中一个实施例中,所述持续集成引擎服务器为Jenkins服务器;所述源码管理服务器为SVN服务器;所述项目构建服务器为Gradle服务器;所述仓库管理服务器为Nexus服务器;所述文件存储服务器为FTP服务器。
在其中一个实施例中,所述持续集成引擎服务器,还用于获取仓库管理***中的构件列表;并根据构件列表以及项目类型选取相应的构件。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一种所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种所述的方法的步骤。
上述持续集成方法、***、计算机设备和存储介质,在持续集成引擎中创建项目,并设置项目类型,获取仓库管理***中与项目类型相关的构件,再根据项目类型设置预设源码管理***、仓库管理***以及文件存储***的构建参数。设置完成参数后获取源码管理***中的持续更新源码,根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。根据项目类型选择所需要的仓库管理***的构件,能够自动的将项目与构件进行匹配,提高了持续集成的灵活性,进一步能够更加便捷的进行持续集成。
附图说明
图1为一个实施例中持续集成方法的流程示意图;
图2为一个实施例中持续集成***的结构示意图。
附图标记:持续集成引擎服务器100、源码管理服务器200、项目构建服务器300、仓库管理服务器400、文件存储服务器500、客户端600、数据库700。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
Jenkins是一个可扩展的持续集成引擎。能够持续、自动的构件软件项目,并监控一些定时执行的任务。Jenkins易于安装只需要部署在服务器中即可,并且易于配置,通过其提供的web界面进行软件构建的配置,在构建完成后能够对测试人员进行通知并发送测试报告。目前持续集成(CI)已成为当前许多软件开发团队在整个软件开发生命周期内侧重于保证代码质量的常见做法。它是一种实践,旨在缓和和稳固软件的构建过程。当Jenkins配置完成后,Jenkins会根据预先制定的时间表,或针对某一特定时间,对目标项目的软件进行构建。Jenkins能够持续的获取新增或修改签入的源代码。也就是说,当软件团队需要周期性的检查新增或修改后的代码时,Jenkins会不断的确认新代码是否会破坏原有软件的成功构建。构建后执行预先制定的测试规则,并发送通知给相应测试人员。部署一个Jenkins的最低要求是,一个可获取的源代码仓库,一个包含构建脚本的项目。
Jenkins在使用时,开发者提交代码到源代码仓库,Jenkins或为每一个软件项目创建一个单独的工作区域,当触发或请求构建一次新的构建时,Jenkins会将源代码仓库中的源码放置相应的工作区。Jenkins对工作区内的源码进构建,构建完成后Jenkins向相应测试人员发送邮件通知,如果构建成功,则将构建产物打包并转移到应用服务器。
Nexus是一个强大的Maven仓库管理器。在实际的开发中,通常多个人同时对多个模块同时进行开发,构建Maven项目,总会有一个模块需要另一个模块的依赖,或者有相同的jar包,我们可以利用SVN这样的工具进行同步,但不断的进行同步会增加开发的复杂度。并在如果要新增加一个开发者,当他将项目构建时,或许会根据pom文件从中央仓库中下载大量jar包,会造成网络问题,同时一种访问同一地址,会被认为是攻击。因此需要搭建Nexus仓库管理器,通过Nexus从Maven中央仓库中下载构件,相关人员使用时需要使用相关构件时,只需从Nexus仓库管理器中获取即可。
SVN用于多个人共同开发同一个项目,共用资源的目的。也就是根据项目存储相关人员输入的源代码,并会主动向Jenkins提供更新的源代码,或Jenkins需要时提取SVN中更新的源代码。
Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化构建开源工具。构建app的,构建包括编译、测试、打包等过程。
FTP是一种使用FTP协议进行传输并存储的***。
在一个实施例中,如图1所示,提供了一种持续集成方法,包括以下步骤:
步骤S102,创建项目,并设置项目类型。
具体地,首先将Jenkins部署在服务器中,通过客户端登录Jenkins,并在Jenkins中预设源码管理***、项目构建***、仓库管理***以及文件存储***的基础配置。更具体地,基础配置可以包括Gradle***的名称和路径,路径可以为设置多个。基础配置还可以包括SVN***的用户名和密码、FTP***的地址账号和密码以及工作空间存储位置。其中,源码管理***为SVN***;项目构建***为Gradle***;仓库管理***为Nexus***;文件存储***为FTP***。所述源码管理***、项目构建***、仓库管理***以及文件存储***可以分别部署在不同的服务器中,也可以部署在同一个服务器中。当基础配置完成后,输入工作空间路径并保存。在通过Jenkins操作界面创建需要打包的项目,并输入名称,设置项目类型。
步骤S104,获取仓库管理***中与项目类型相关的构件。
具体地,获取仓库管理***中的构件列表;根据构件列表以及项目类型选取与项目类型相关的构件。其中,获取仓库管理***中的构件列表,更具体的为:获取仓库管理***的地址;获取仓库管理***的节点数据;根据所述节点数据进行解析,得到第一数据、第二数据以及第三数据。其中,第一数据为:data节点数据;第二数据为children节点数据;第三数据为:indexBrowserTreeNode节点数据。更具体的,data节点数据为当前仓库管理***的所有数据;children节点为data节点下的子节点,children节点数据为所有构件的数据;indexBrowserTreeNode节点为children节点下的子节点,indexBrowserTreeNode节点数据为一个构件的完整数据。一个构件的完整数据包括:nodeName、path、groupID、artifactID、version等信息。其中,nodeName为节点名称、path为节点路径、groupID为项目组织唯一的标识符,实际对应JAVA的包的结构、artifactID为是项目的唯一的标识符,实际对应项目的名称、version为版本号。也就是说,Jenkins会调用Nexus***组件列表的接口,再通过该接口从Nexus***中拉取组件列表,最后根据之前设置的项目类型,提取该项目类型所需的组件。其中,Jenkins拉取组件列表,首先会同步调用基础配置中的Nexus服务仓库地址,设置当前时间戳请求参数,并向Nexus发起网络请求,当Nexus返回网络请求成功时,然后Nexus向Jenkins返回不规则的Json字符串,对不规则的Json字符串进行解析,得到项目和相应项目所需构件的列表。
步骤S106,根据项目类型,设置预设源码管理***、仓库管理***以及文件存储***的构建参数。
具体地,Jenkins根据项目的类型自动设置本项目SVN的远程地址和本地路径,以及相应的构件版本。并且会自动设置本项目Gradle的版本,根据项目的类型自动生成动态参数打包平台类型、版本号、版本code、是否多渠道、是否生产包、混淆压缩等,并自动填写打包脚本路径,并选择是否需要FTP推送。将构件参数进行保存。
步骤S108,获取源码管理***中的持续更新源码。
具体地,在完成该项目的过程中,多名人员同时对该项目进行开发,每个人员每天都会将当天编写的源代码传输至SVN中相应的项目中,并进行保存。当需要进行持续构件,SVN中某一项目的源码更新,SVN会将更新后的源码主动推送至Jenkins,或者Jenkins会从SVN中主动获取更新后的源码。
步骤S110,根据持续更新的源码利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。
具体地,Jenkins对获取到的更新后的源代码利用项目构建***进行构建,也就是利用Gradle进行编译、测试最终打包脚本。并且Jenkins会实时的更新显示当前的打包进度,并且会记录构建产物的构建过程日志,并进行显示。通过显示构建过程日志,打包成功或打包失败能够清晰的进行显示。当打包成功,则将打包成功的构建产物发送至文件存储***,并提供下载。其中构建产物可以是APK等文件。
在其中一个实施例中,在Jenkins的产品侧,可以展示所有需要构建的项目,并且能够新建项目,设置新建项目的名称以及项目类型。还可以用于设置打包的组件、SVN路径以及打包脚本、查看构建过程日志,以及下载构建产物。在其中一个实施例中,在Jenkins的技术侧,Jenkins主要包括以下模块:工作空间模块,用于创建项目的空间目录,处理拉去打包脚本、编译文件、打包产物等。全局基础配置模块,用于配制Grade、Maven、SVN、FTP等服务器环境。平台建容模块,用于兼容Linux、Windows,底层屏蔽差异。构建类型模块,用于支持的项目类型,目前是支持Android Project。软件版本控制管理模块,用于拉取SVN代码。依赖构件仓库管理配置模块,用于配置Nexus仓库。依赖项目构件模块,用于选取当前项目所依赖的组件。项目构建工作流模块,用于拉取SVN代码、传入参数、运行脚本、上传FTP等。FTP服务模块,用于推送文件到FTP服务器。构建日志模块,用于项目构建过程中编译日志的管理。
上述实施例可以通过Jenkins创建一个项目的打包工程,然后根据项目环境的实际情况进行Gradle、SVN、Nexus等的配置,并且自动化的设置不同的组件、版本、应用版本号及渠道等。根据构建过程日志,能够可视化的看到当前应用编译执行端的全过程,还可以从打包历史中查看,本实施例中的Jenkins可以一键执行打包编译构建,打包成功后的产物可以实时推送至FTP服务器。
上述持续集成方法,在持续集成引擎中创建项目,并设置项目类型,获取仓库管理***中与项目类型相关的构件,再根据项目类型设置预设源码管理***、仓库管理***以及文件存储***的构建参数。设置完成参数后获取源码管理***中的持续更新源码,根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。根据项目类型选择所需要的仓库管理***的构件,能够自动的将项目与构件进行匹配,提高了持续集成的灵活性,进一步能够更加便捷的进行持续集成。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图2所示,提供了一种持续集成***,所述***包括:持续集成引擎服务器100、源码管理服务器200、项目构建服务器300、仓库管理服务器400以及文件存储服务器500;所述源码管理服务器、项目构建服务器、仓库管理服务器以及文件存储服务器分别与所述持续集成引擎服务器连接。
所述持续集成引擎服务器100,用于创建项目,设置项目类型;并获取仓库管理服务器中与项目类型相关的构件;还用于根据项目类型设置源码管理服务器、仓库管理服务器以及文件存储服务器的构建参数;获取源码管理***中的持续更新源码,根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***;
所述源码管理服务器200,用于存储用户输入的持续更新的源码;
所述项目构建服务器300,用于对持续更新的源码进行构件;
所述仓库管理服务器400,用于下载并存储构件;
所述文件存储服务器400,用于存储构建产物。
在其中一个实施例中,所述持续集成引擎服务器100为Jenkins服务器;所述源码管理服务器200为SVN服务器;所述项目构建服务器300为Gradle服务器;所述仓库管理服务器400为Nexus服务器;所述文件存储服务器500为FTP服务器。
在其中一个实施例中,所述持续集成引擎服务器100,还用于获取仓库管理***中的构件列表;并根据构件列表以及项目类型选取相应的构件。
在其中一个实施例中,所述持续集成***还包括至少一个客户端600,用于操作人员进行实施操控以及监视。
在其中一个实施例中,所述持续集成***还包括数据库700,用于备份SVN服务器中的相关源码数据。
关于持续集成***的具体限定可以参见上文中对于持续集成方法的限定,在此不再赘述。上述持续集成***中的各个服务器可全部或部分通过软件、硬件及其组合来实现。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
创建项目,并设置项目类型;获取仓库管理***中与项目类型相关的构件;根据项目类型设置源码管理***、仓库管理***以及文件存储***的构建参数;获取源码管理***中的持续更新源码;根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
预设源码管理***、项目构建***、仓库管理***以及文件存储***的基础配置。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取仓库管理***中的构件列表;根据构件列表以及项目类型选取相应的构件。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取仓库管理***的地址;获取获取仓库管理***的节点数据;根据所述节点数据进行解析,得到第一数据、第二数据以及第三数据。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
获取构建过程日志,并进行显示。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
创建项目,并设置项目类型;获取仓库管理***中与项目类型相关的构件;根据项目类型设置源码管理***、仓库管理***以及文件存储***的构建参数;获取源码管理***中的持续更新源码;根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
预设源码管理***、项目构建***、仓库管理***以及文件存储***的基础配置。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取仓库管理***中的构件列表;根据构件列表以及项目类型选取相应的构件。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取仓库管理***的地址;获取获取仓库管理***的节点数据;根据所述节点数据进行解析,得到第一数据、第二数据以及第三数据。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
获取构建过程日志,并进行显示。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种持续集成方法,其特征在于,所述方法包括:
创建项目,并设置项目类型;
获取仓库管理***中与所述项目类型相关的构件;
根据所述项目类型设置源码管理***、仓库管理***以及文件存储***的构建参数;
获取源码管理***中的持续更新源码;
根据持续更新的所述源码以及与所述项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***。
2.根据权利要求1所述的方法,其特征在于,所述创建项目,并设置项目类型之前包括:
预设源码管理***、项目构建***、仓库管理***以及文件存储***的基础配置。
3.根据权利要求2所述的方法,其特征在于,所述获取仓库管理***中与所述项目类型相关的构件包括:
获取仓库管理***中的构件列表;
根据所述构件列表以及所述项目类型选取与所述项目类型相关的构件。
4.根据权利要求3所述的方法,其特征在于,所述获取仓库管理***中的构件列表包括:
获取仓库管理***的地址;
获取获取仓库管理***的节点数据;
根据所述节点数据进行解析,得到第一数据、第二数据以及第三数据。
5.根据权利要求4所述的方法,其特征在于,所述根据持续更新的所述源码以及与所述项目类型相关的构件利用项目构建***进行构建之后包括:
获取构建过程日志,并进行显示。
6.一种持续集成***,其特征在于,所述***包括:持续集成引擎服务器、源码管理服务器、项目构建服务器、仓库管理服务器以及文件存储服务器;所述源码管理服务器、项目构建服务器、仓库管理服务器以及文件存储服务器分别与所述持续集成引擎服务器连接;
所述持续集成引擎服务器,用于创建项目,设置项目类型;并获取仓库管理服务器中与项目类型相关的构件;还用于根据项目类型设置源码管理服务器、仓库管理服务器以及文件存储服务器的构建参数;获取源码管理***中的持续更新源码,根据持续更新的源码以及与项目类型相关的构件利用项目构建***进行构建,并将生成的构建产物发送至文件存储***;
所述源码管理服务器,用于存储用户输入的持续更新的源码;
所述项目构建服务器,用于对持续更新的源码进行构件;
所述仓库管理服务器,用于下载并存储构件;
所述文件存储服务器,用于存储构建产物。
7.根据权利要求6所述的***,其特征在于,
所述持续集成引擎服务器为Jenkins服务器;
所述源码管理服务器为SVN服务器;
所述项目构建服务器为Gradle服务器;
所述仓库管理服务器为Nexus服务器;
所述文件存储服务器为FTP服务器。
8.根据权利要求7所述的***,其特征在于,
所述持续集成引擎服务器,还用于获取仓库管理***中的构件列表;并根据构件列表以及项目类型选取相应的构件。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN201811474798.8A 2018-12-04 2018-12-04 持续集成方法、***、计算机设备和存储介质 Pending CN109634612A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811474798.8A CN109634612A (zh) 2018-12-04 2018-12-04 持续集成方法、***、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811474798.8A CN109634612A (zh) 2018-12-04 2018-12-04 持续集成方法、***、计算机设备和存储介质

Publications (1)

Publication Number Publication Date
CN109634612A true CN109634612A (zh) 2019-04-16

Family

ID=66071068

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811474798.8A Pending CN109634612A (zh) 2018-12-04 2018-12-04 持续集成方法、***、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN109634612A (zh)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377334A (zh) * 2019-07-25 2019-10-25 北京奇艺世纪科技有限公司 持续集成方法及设备
CN110597552A (zh) * 2019-09-04 2019-12-20 浙江大搜车软件技术有限公司 项目持续集成流水线的配置方法、装置、设备及存储介质
CN110597518A (zh) * 2019-09-17 2019-12-20 上海钧正网络科技有限公司 项目构建方法、装置、计算机设备和存储介质
CN111144839A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成***及终端设备
CN111158744A (zh) * 2019-12-30 2020-05-15 中国银行股份有限公司 跨平台异构数据的整合方法及装置
CN111309713A (zh) * 2020-05-14 2020-06-19 深圳开源互联网安全技术有限公司 Maven开源软件库的生成方法、装置及存储介质
CN111459538A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 代码同步方法及装置
CN111736855A (zh) * 2020-05-18 2020-10-02 苏州浪潮智能科技有限公司 一种基于应用web端自动打包部署的实现方法及***
CN111782263A (zh) * 2020-07-22 2020-10-16 网易(杭州)网络有限公司 游戏打包的处理方法及装置
CN112286580A (zh) * 2020-10-31 2021-01-29 成都新潮传媒集团有限公司 一种用于处理流水线作业的方法、装置及计算机设备
CN117707547A (zh) * 2024-02-05 2024-03-15 云筑信息科技(成都)有限公司 一种解析java项目间引用关系的方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130212562A1 (en) * 2012-02-09 2013-08-15 Sonatype, Inc. System and method of providing real-time updates related to in-use artifacts in a software development environment

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130212562A1 (en) * 2012-02-09 2013-08-15 Sonatype, Inc. System and method of providing real-time updates related to in-use artifacts in a software development environment

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
周莹等: "基于Jenkins的持续集成自动部署研究", 《计算机与数字工程》 *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110377334A (zh) * 2019-07-25 2019-10-25 北京奇艺世纪科技有限公司 持续集成方法及设备
CN110597552B (zh) * 2019-09-04 2023-08-18 浙江大搜车软件技术有限公司 项目持续集成流水线的配置方法、装置、设备及存储介质
CN110597552A (zh) * 2019-09-04 2019-12-20 浙江大搜车软件技术有限公司 项目持续集成流水线的配置方法、装置、设备及存储介质
CN110597518A (zh) * 2019-09-17 2019-12-20 上海钧正网络科技有限公司 项目构建方法、装置、计算机设备和存储介质
CN110597518B (zh) * 2019-09-17 2023-08-18 上海钧正网络科技有限公司 项目构建方法、装置、计算机设备和存储介质
CN111144839A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成***及终端设备
CN111144839B (zh) * 2019-12-17 2024-02-02 深圳市优必选科技股份有限公司 一种项目构建方法、持续集成***及终端设备
CN111158744A (zh) * 2019-12-30 2020-05-15 中国银行股份有限公司 跨平台异构数据的整合方法及装置
CN111158744B (zh) * 2019-12-30 2024-02-23 中国银行股份有限公司 跨平台异构数据的整合方法及装置
CN111459538A (zh) * 2020-04-07 2020-07-28 中国建设银行股份有限公司 代码同步方法及装置
CN111459538B (zh) * 2020-04-07 2024-02-13 中国建设银行股份有限公司 代码同步方法及装置
CN111309713B (zh) * 2020-05-14 2020-08-18 深圳开源互联网安全技术有限公司 Maven开源软件库的生成方法、装置及存储介质
CN111309713A (zh) * 2020-05-14 2020-06-19 深圳开源互联网安全技术有限公司 Maven开源软件库的生成方法、装置及存储介质
CN111736855A (zh) * 2020-05-18 2020-10-02 苏州浪潮智能科技有限公司 一种基于应用web端自动打包部署的实现方法及***
CN111782263A (zh) * 2020-07-22 2020-10-16 网易(杭州)网络有限公司 游戏打包的处理方法及装置
CN111782263B (zh) * 2020-07-22 2024-01-23 网易(杭州)网络有限公司 游戏打包的处理方法及装置
CN112286580A (zh) * 2020-10-31 2021-01-29 成都新潮传媒集团有限公司 一种用于处理流水线作业的方法、装置及计算机设备
CN117707547A (zh) * 2024-02-05 2024-03-15 云筑信息科技(成都)有限公司 一种解析java项目间引用关系的方法
CN117707547B (zh) * 2024-02-05 2024-05-28 云筑信息科技(成都)有限公司 一种解析java项目间引用关系的方法

Similar Documents

Publication Publication Date Title
CN109634612A (zh) 持续集成方法、***、计算机设备和存储介质
CN107577469B (zh) 一种软件打包发布管理方法
CN106104467B (zh) 一种自动化部署方法和终端
US20160179495A1 (en) Device and method for packaging application
CN109710524A (zh) 一种自动测试方法、***和计算机存储介质
CN111324522A (zh) 一种自动化测试***及方法
CN110727446A (zh) 自动部署方法、装置、设备及介质
CN110851135A (zh) 应用程序自动构建上传方法、装置及计算机设备、存储介质
CN111506322B (zh) 一种自动化集成构建开发部署平台及方法
CN112882700A (zh) iOS应用程序构建方法及装置、电子设备及存储介质
CN109800016A (zh) 工程自动部署方法、装置、计算机设备和存储介质
US20040122937A1 (en) System and method of tracking messaging flows in a distributed network
CN112084008B (zh) 一种基于容器技术快速部署云管***的方法
CN103186376B (zh) 一种用于建立或更新软件开发环境的方法、装置和设备
CN110515625A (zh) 任务构建方法、装置、设备及计算机可读存储介质
CN110138876A (zh) 任务部署方法、装置、设备及平台
CN112631614A (zh) 应用部署方法、装置、计算机设备和存储介质
CN110795139A (zh) 客户端批量打包方法、装置、计算机设备和存储介质
CN111651352B (zh) 一种仓库代码的合并方法及装置
CN113626036A (zh) 一种基于Jenkins的代码集成管理方法和***
CN112579099A (zh) 代码的部署方法、装置、存储介质及电子设备
CN102622550A (zh) 面向终端计算机的补丁安全在线检查***
CN110795105A (zh) 一种配电自动化主站***自动编译部署方法与***
CN106713001A (zh) 一种网络巡检方法及装置
CN112130889A (zh) 资源的管理方法和装置、存储介质、电子装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190416

RJ01 Rejection of invention patent application after publication