一种iOS依赖库的同步方法及终端与流程

文档序号:16428287发布日期:2018-12-28 19:57阅读:273来源:国知局
一种iOS依赖库的同步方法及终端与流程

本发明涉及计算机技术领域,尤其涉及一种ios依赖库的同步方法及终端。

背景技术

随着公司规模的扩展,业务的发展,ios应用会使用到多个外部依赖组件或者某个依赖组件的多个版本。目前的ios应用在每一次构建时,未被cocoapods缓存的依赖组件或某个依赖组件的版本都要依次进行外网检查索引、下载依赖组件源码和本地cocoapods安装等动作,这样的重复的外部网络io操作比较耗时,增加ios应用的构建时长,且稳定性不高,降低了ios应用的构建成功率。



技术实现要素:

本发明所要解决的技术问题是:提供一种ios依赖库的同步方法及终端,能够提升ios应用的构建速度和构建成功率。

为了解决上述技术问题,本发明采用的一种技术方案为:

一种ios依赖库的同步方法,包括以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单;

s2、根据白名单将依赖组件从外网环境同步到内网环境。

为了解决上述技术问题,本发明采用的另一种技术方案为:

一种ios依赖库的同步终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单;

s2、根据白名单将依赖组件从外网环境同步到内网环境。

本发明的有益效果在于:通过制定构建ios应用所需要依赖组件的白名单,从而控制了依赖组件的同步范围,根据白名单将依赖组件从外网环境同步到内网环境,构建ios应用时能够直接从内网环境中获取依赖组件进行cocoapods安装、缓存,实现ios应用构建时,能够快速、稳定地获取依赖组件进行构建发布。

附图说明

图1所示为本发明的一种ios依赖库的同步方法的流程图;

图2所示为本发明的一种ios依赖库的同步终端的结构示意图;

图3所示为本发明实施例一种ios依赖组件的同步时序图。

标号说明:

1、一种ios依赖库的同步终端;2、存储器;3、处理器。

具体实施方式

为详细说明本发明的技术内容、所实现目的及效果,以下结合实施方式并配合附图予以说明。

本发明最关键的构思在于:制定构建ios应用所需要依赖组件的白名单,之后根据白名单将依赖组件从外网环境同步到内网环境,使得构建ios应用时能够直接从内网环境中获取依赖组件进行cocoapods安装、缓存,提升ios应用的构建速度和构建成功率。

请参照图1所示,一种ios依赖库的同步方法,包括以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单;

s2、根据白名单将依赖组件从外网环境同步到内网环境。

从上述描述可知,通过制定构建ios应用所需要依赖组件的白名单,从而控制了依赖组件的同步范围,根据白名单将依赖组件从外网环境同步到内网环境,构建ios应用时能够直接从内网环境中获取依赖组件进行cocoapods安装、缓存,实现ios应用构建时,能够快速、稳定地获取依赖组件进行构建发布。

进一步的,s2具体包括:

s201、根据白名单将依赖组件的索引克隆或更新至外网环境中github平台的索引库;

s202、根据github平台的索引库中依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台;

s203、更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址。

从上述描述可知,通过处理依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台,实现了将依赖组件的源码从外网环境同步至内网环境,以及通过更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址的方式,使得依赖组件的索引与依赖组件的源码在内网环境的gitlab平台中一一对应。

进一步的,s201具体为:判断同步机上是否存依赖组件的索引,若不存在,则根据白名单将依赖组件的索引克隆至外网环境中github平台的索引库,若存在,根据白名单将依赖组件的索引更新至外网环境中github平台的索引库。

从上述描述可知,同步时判断同步机上是否存依赖组件的索引,若存在,则根据白名单将依赖组件的索引更新至外网环境中github平台的索引库,无需重新克隆已有依赖组件的索引。

进一步的,s203具体为:将依赖组件的索引的source值指向的源码地址修改为依赖组件的源码在gitlab平台中所对应的源码地址,并将修改后的依赖组件的索引推送至gitlab平台的索引库。

从上述描述可知,先将依赖组件的索引的source值指向的源码地址进行修改,再将修改后的赖组件的索引推送至gitlab平台的索引库,无需重新建立依赖组件的索引,节省时间,同时也避免了重新建立依赖组件的索引可能引起的源码与索引不匹配或者缺少索引的缺陷。

进一步的,s2之后还包括步骤:

s3、判断同步是否成功并返回同步判断结果。

请参照图2所示,一种ios依赖库的同步终端,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单;

s2、根据白名单将依赖组件从外网环境同步到内网环境。

从上述描述可知,通过制定构建ios应用所需要依赖组件的白名单,从而控制了依赖组件的同步范围,根据白名单将依赖组件从外网环境同步到内网环境,构建ios应用时能够直接从内网环境中获取依赖组件进行cocoapods安装、缓存,实现ios应用构建时,能够快速、稳定地获取依赖组件进行构建发布。

进一步的,s2具体包括:

s201、根据白名单将依赖组件的索引克隆或更新至外网环境中github平台的索引库;

s202、根据github平台的索引库中依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台;

s203、更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址。

从上述描述可知,通过处理依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台,实现了将依赖组件的源码从外网环境同步至内网环境,以及通过更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址的方式,使得依赖组件的索引与依赖组件的源码在内网环境的gitlab平台中一一对应。

进一步的,s201具体为:判断同步机上是否存依赖组件的索引,若不存在,则根据白名单将依赖组件的索引克隆至外网环境中github平台的索引库,若存在,根据白名单将依赖组件的索引更新至外网环境中github平台的索引库。

从上述描述可知,同步时判断同步机上是否存依赖组件的索引,若存在,则根据白名单将依赖组件的索引更新至外网环境中github平台的索引库,无需重新克隆已有依赖组件的索引。进一步的,s203具体为:将依赖组件的索引的source值指向的源码地址修改为依赖组件的源码在gitlab平台中所对应的源码地址,并将修改后的依赖组件的索引推送至gitlab平台的索引库。

从上述描述可知,先将依赖组件的索引的source值指向的源码地址进行修改,再将修改后的赖组件的索引推送至gitlab平台的索引库,无需重新建立依赖组件的索引,节省时间,同时也避免了重新建立依赖组件的索引可能引起的源码与索引不匹配或者缺少索引的缺陷。

进一步的,s2之后还包括步骤:

s3、判断同步是否成功并返回同步判断结果。

请参照图1和图3所示,本发明的实施例一为:

一种ios依赖库的同步方法,包括以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单,所述白名单包括依赖组件及依赖组件的版本;

s2、根据白名单将依赖组件从外网环境同步到内网环境;

s3、判断同步是否成功并返回同步判断结果;

s4、构建ios应用时从内网环境中获取依赖组件进行cocoapods安装、缓存。

具体的,s2包括:

s201、根据白名单将依赖组件的索引克隆或更新至外网环境中github平台的索引库;

s202、根据github平台的索引库中依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台;

s203、更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址。

其中,判断同步机上是否存依赖组件的索引,若不存在,则根据白名单将依赖组件的索引克隆至外网环境中github平台的索引库,若存在,根据白名单将依赖组件的索引更新至外网环境中github平台的索引库。

其中,s203具体为:将依赖组件的索引的source值指向的源码地址修改为依赖组件的源码在gitlab平台中所对应的源码地址,并将修改后的依赖组件的索引推送至gitlab平台的索引库。

请参照图2和图3所示,本发明的实施例二为:

一种ios依赖库的同步终端1,包括存储器2、处理器3以及存储在所述存储器2上并可在所述处理器3上运行的计算机程序,所述处理器3执行所述计算机程序时实现以下步骤:

s1、制定构建ios应用所需要依赖组件的白名单,所述白名单包括依赖组件及依赖组件的版本;

s2、根据白名单将依赖组件从外网环境同步到内网环境。

s3、判断同步是否成功并返回同步判断结果;

s4、构建ios应用时从内网环境中获取依赖组件进行cocoapods安装、缓存。

具体的,s2包括:

s201、根据白名单将依赖组件的索引克隆或更新至外网环境中github平台的索引库;

s202、根据github平台的索引库中依赖组件的索引的source值指向的源码地址,将github平台中依赖组件的源码同步至内网环境中的gitlab平台;

s203、更新gitlab平台的索引库中依赖组件的索引的source值指向的源码地址。

其中,判断同步机上是否存依赖组件的索引,若不存在,则根据白名单将依赖组件的索引克隆至外网环境中github平台的索引库,若存在,根据白名单将依赖组件的索引更新至外网环境中github平台的索引库。

其中,s203具体为:将依赖组件的索引的source值指向的源码地址修改为依赖组件的源码在gitlab平台中所对应的源码地址,并将修改后的依赖组件的索引推送至gitlab平台的索引库。

请参照图3所示,本发明的实施例三为:

将上述ios依赖库的同步方法应用于实际场景中:

步骤一、构建作为同步时的判断条件的白名单:判断依赖组件是否存在于白名单中,若不存在,则在白名单中添加该依赖组件及其版本,若存在,则修改该依赖组件的版本;

步骤二、同步服务触发同步机上的salt开始同步,所述同步机包含master和minion;

步骤三、同步的第一步:判断同步机上是否存依赖组件的索引,若不存在,则根据白名单将依赖组件的索引克隆至外网环境中github平台的索引库,若存在,根据白名单将依赖组件的索引更新至外网环境中github平台的索引库;

步骤四、同步的第二步:根据github平台中依赖组件各版本的索引的source值指向的源码地址,将依赖组件的源码从github平台同步到内网环境的gitlab平台,图3中仅展现出依赖组件的源码在github、oschina等代码托管服务平台上的情况,其他的如http/https压缩包地址形式的,则下载,解压到内网环境的内容服务存储上;

步骤五、同步的第三步:修改依赖组件各版本的索引中的source值指向的源码地址;

步骤六、同步的第四步:将已修改的赖组件各版本的索引推送到内网环境的gitlab平台上;

步骤七、同步服务判断上述步骤三、步骤四、步骤五和步骤六的执行结果,并将同步的成功与否返回。

综上所述,本发明提供的一种ios依赖库的同步方法及终端,通过制定构建ios应用所需要依赖组件的白名单,从而控制了依赖组件的同步范围,根据白名单将依赖组件从外网环境同步到内网环境,构建ios应用时能够直接从内网环境中获取依赖组件进行cocoapods安装、缓存,实现ios应用构建时,能够快速、稳定地获取依赖组件进行构建发布。

以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等同变换,或直接或间接运用在相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1