一种项目交付方法、装置、电子设备及存储介质与流程

文档序号:33192349发布日期:2023-02-04 09:07阅读:28来源:国知局
一种项目交付方法、装置、电子设备及存储介质与流程

1.本发明涉及数据处理技术领域,尤其涉及一种项目交付方法、装置、电子设备及存储介质。


背景技术:

2.在企业的项目交付过程中,需要依次制作测试环境制品和生产环境制品,然后依次部署到对应的测试环境以及生产环境并启动运行。
3.目前,在制作各项目阶段的环境制品时,是先将源代码与对应环境的配置信息一起构建为目标代码,然后将目标代码制作为制品,部署到对应环境里。也就是说,现有技术中将环境配置信息与目标代码融合在一起,需要多次执行前端应用构建,耗时较长的问题。
4.为了解决上述问题,需要对项目交付方法进行改进。


技术实现要素:

5.本发明提供了一种项目交付方法、装置、电子设备及存储介质,以解决对项目进行测试时需要进行多次构建,测试过程冗余且测试效率不高的问题。
6.第一方面,本发明实施例提供了一种项目交付方法,包括:
7.根据待交付项目所属的项目源代码和开发环境源代码,确定与所述待交付项目所对应的至少一个待确定文件;其中,所述待确定文件包括项目开发文件、项目测试文件和项目交付文件中的至少一种;
8.从所述至少一个待确定文件中,确定与所述待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息;其中,所述待使用信息包括所述项目开发阶段的待使用开发信息、所述项目测试阶段的待使用测试信息以及所述项目交付阶段的待使用交付信息;
9.依次基于各项目阶段的待使用信息对所述待交付项目进行处理,得到相应的待交付文件;
10.基于各待交付文件中确定出目标交付文件,并交付。
11.第二方面,本发明实施例还提供了一种项目交付装置,包括:
12.待确定文件确定模块,用于根据待交付项目所属的项目源代码和开发环境源代码,确定与所述待交付项目所对应的至少一个待确定文件;其中,所述待确定文件包括项目开发文件、项目测试文件和项目交付文件中的至少一种;
13.待使用信息确定模块,用于从所述至少一个待确定文件中,确定与所述待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息;其中,所述当前项目阶段包括项目开发阶段、项目测试阶段或项目交付阶段,所述待使用信息包括所述项目开发阶段的待使用开发信息、所述项目测试阶段的待使用测试信息以及所述项目交付阶段的待使用交付信息;
14.待交付文件确定模块,用于依次基于各项目阶段的待使用信息对所述待交付项目
进行处理,得到相应的待交付文件;
15.文件交付模块,用于基于各待交付文件中确定出目标交付文件,并交付。
16.第三方面,本发明实施例还提供了一种电子设备,包括:
17.至少一个处理器;以及
18.与所述至少一个处理器通信连接的存储器;其中,
19.所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明任一实施例所述的项目交付方法。
20.第四方面,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本发明任一实施例所述的项目交付方法。
21.本发明实施例的技术方案,通过根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件,基于待交付项目所属的项目源代码和开发环境源代码,生成与待交付项目相对应的项目开发文件,同时从开发环境源代码中提取项目测试配置信息,以生成待交付项目所对应的项目测试文件,从开发环境源代码中提取项目交付配置信息,以生成待交付项目所对应的项目交付文件。从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息,以根据各项目阶段的待使用信息得到相应的待交付文件。依次基于各项目阶段的待使用信息对所述待交付项目进行处理,得到相应的待交付文件,根据待交付项目在项目开发阶段,得到待交付开发文件,并基于项目测试阶段的待使用信息对待交付开发文件进行测试,以在测试通过后,得到待交付文件,进一步的,在待交付文件的基础上,基于项目交付阶段的待使用信息,从各待交付文件中确定出目标交付文件,并交付,也就是,基于项目交付阶段的待使用信息对待交付文件进行处理,得到目标交付文件,以交付。解决了在项目交付的过程中,基于不同的项目阶段对待交付项目处理时,需要对每个项目阶段的文件信息进行打包封装,操作过程繁琐的问题,通过将项目代码和项目配置信息进行分离,实现了提高项目交付速度,简化项目交付的操作流程的效果。
22.应当理解,本部分所描述的内容并非旨在标识本发明的实施例的关键或重要特征,也不用于限制本发明的范围。本发明的其它特征将通过以下的说明书而变得容易理解。
附图说明
23.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
24.图1是根据本发明实施例一提供的一种项目交付方法的流程图;
25.图2是根据本发明实施例二提供的一种项目文件的确定方法的示意图;
26.图3是根据本发明实施例二提供的一种项目文件的确定方法的示意图;
27.图4是根据本发明实施例二提供的一种在项目测试阶段对项目进行测试的示意图;
28.图5是根据本发明实施例二提供的一种在项目交付阶段对项目进行测试的示意图;
29.图6是根据本发明实施例三提供的一种项目交付装置的结构示意图;
30.图7是实现本发明实施例的项目交付方法的电子设备的结构示意图。
具体实施方式
31.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
32.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
33.在对本技术方案进行详细阐述之前,先对本技术方案的应用场景进行简单介绍,以便更加清楚地理解本技术方案。从项目开发到项目上线的过程中,通常会经历项目开发阶段、项目测试阶段和项目交付阶段,具体而言,一个项目从项目研发到项目上线,通常需要经过开发阶段、测试阶段和交付阶段,在不同的项目阶段,该项目所需要的项目信息也是不同的。如,在项目开发阶段,需要与该项目相对应的项目开发信息,在项目测试阶段,需要基于相应的测试信息进行项目测试,在项目交付阶段,需要调用交付阶段的交付信息对该项目进行处理,进而将处理后的项目进行交付。
34.实施例一
35.图1为本发明实施例一提供了一种项目交付方法的流程图,本实施例可适用于在项目上线前,对该项目进行测试,以确定该项目是否符合项目上线要求的情况,该方法可以由项目交付装置来执行,该项目交付装置可以采用硬件和/或软件的形式实现,该项目交付装置可配置于可执行项目交付方法的计算设备中。
36.如图1所示,该方法包括:
37.s110、根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件。
38.其中,待交付项目可以理解为企业研发的项目,如,可以为前端网站项目或者应用软件程序等。项目源代码可以理解为在研发待交付项目时所使用的源代码。开发环境代码可以理解为待交付项目所依赖的开发环境所对应的源代码。通常来说,在一个项目工程里可以包括至少一个待交付项目,每个待交付项目所对应的项目源代码是不同的,但是所属同一个项目工程中的各待交付项目所对应的开发环境源代码是相同的。待确定文件可以理解为基于待交付项目所依赖的项目源代码和开发环境源代码所得到的项目文件,待确定文件包括项目开发文件、项目测试文件和项目交付文件中的至少一种。
39.示例性地,项目工程1中包括待交付项目1和待交付项目2,项目工程2中包括待交付项目3和待交付项目4,其中,项目工程1依赖开发环境源代码1,项目工程2依赖开发环境
源代码2,待交付项目1、待交付项目2、待交付项目3和待交付项目4分别对应不同的项目源代码,但是待交付项目1和待交付项目2均为基于开发环境源代码1进行开发的项目,相类似地,待交付项目3和待交付项目4同样均为基于开发环境源代码进行开发的项目。在实际应用中,在项目的整个研发过程中要经历项目开发阶段、项目测试阶段和项目交付阶段。通常,在项目开发阶段,需要确定与待交付项目相对应的项目源代码以及开发环境源代码,以得到与待交付文件相对应的至少一个待确定文件。
40.可选的,根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件,包括:获取待交付项目所属的项目源代码和开发环境源代码;基于前端应用构建软件,对项目源代码和开发环境源代码进行处理,得到与待交付项目相对应的项目开发文件;以及基于配置文件转换器,从开发环境源代码中提取项目测试配置信息和项目交付配置信息,并分别生成相应的项目测试文件和项目交付文件。
41.其中,前端应用构建软件可以理解为基于源代码进行项目文件构建的软件,具体的,基于前端应用构建器可以构建与待交付项目相对应的项目开发文件、项目测试文件以及项目交付文件。配置文件转换器可以理解为用于从开发环境源代码中提取待交付项目的项目测试配置信息和项目交付配置信息的软件或插件。
42.需要说明的是,基于待交付项目的项目源代码和开发环境源代码可以直接得到与待交付项目相对应的项目开发文件,而项目测试文件和项目交付文件还需要在开发环境源代码的基础上进行进一步处理才可以得到,具体而言,从待交付项目的开发环境源代码中提取相应的项目测试配置信息,基于项目测试配置信息,可以得到待交付项目的项目测试文件。相类似的,从待交付项目的开发环境源代码中提取项目交付配置信息,可以生成与待交付项目相对应的项目交付文件。
43.以项目测试配置信息为例,在待交付项目开发完成后,得到项目开发文件,此时需要对待交付项目在测试阶段进行测试,而在对待交付项目进行测试时,需要从预先设置的与待交付项目所对应的测试阶段的项目测试库中,获取相应的项目测试信息,因此,在项目测试配置信息中包括了与待交付项目在测试阶段的项目测试库所对应的地址信息,也就是说,从项目测试信息中可以确定在项目测试阶段,对待交付项目进行测试时所使用的项目测试库的地址,以基于该地址确定与待交付项目相对应的项目测试库,并基于该项目测试库中的项目测试信息对待交付项目进行测试。
44.具体的,根据待交付项目所携带的项目标识,可以确定与待交付项目所属的项目源代码以及开发环境源代码,并基于所述项目标识从源代码数据库中调取与所述待交付项目所对应的项目源代码和开发环境源代码。在现有技术中,对待交付项目进行上线测试时,在不同的项目阶段都需要基于相应的项目信息得到项目制品,即,对项目信息进行打包封装,得到待测试的文件。也就是说,在整个项目上线测试中,得到与待交付项目相对应的项目开发文件后,在测试阶段,需要对待交付项目的项目源代码、开发环境源代码以及项目测试配置信息进行打包封装,以基于项目测试阶段的项目测试库中的项目测试信息进行测试。相类似地,在项目交付阶段,需要对待交付项目的项目源代码、开发环境源代码以及项目交付配置信息进行打包封装,得到目标交付文件,以基于目标交付文件进行交付,也就是项目上线。也就是说,在不同的项目阶段,待交付项目所需要使用的项目配置信息是不同的,为了能够方便获取与当前项目阶段相对应的项目配置信息,可以基于各项目阶段的项
目配置信息生成相应的待确定文件。
45.因此,在本技术方案中,预先获取与待交付项目相对应的项目源代码和开发环境源代码,基于前端用构建器对项目源代码和开发环境源代码进行处理,得到项目开发文件。进一步的,基于配置文件转换器还可以直接从开发环境源代码中提取项目测试配置信息和项目交付配置信息,分别生成相应的项目测试文件和项目交付文件。在这样的操作方式下,无需针对不同的项目阶段进行多次打包封装,而是只需要根据待交付项目当前所处的项目阶段,调取相应的项目配置信息,并在得到目标交付文件后进行交付。
46.以一个通俗的例子进行举例,若待交付项目为衣服制品,则在项目开发阶段,需要获取与该衣服制品相对应的开发配置信息,如,衣服版型信息、颜色信息、尺寸信息以及衣服材质信息等。进一步的,在完成对该衣服制品的开发后,需要确定该衣服制品进行相应的测试,此时,需要获取测试阶段的测试配置信息,比如,需要对衣服制品的材质信息进行测试,若测试配置信息为棉布材质,则可以基于棉布材质对该衣服制品进行测试,得到棉布材质的衣服制品,若所得到的棉布材质的衣服制品合格,则可以进行下一阶段的项目交付。在项目交付阶段,需要获取与项目交付阶段相对应的交付配置信息,如交付配置信息中,衣服材质信息为牛仔材质,则采用牛仔材质对该衣服制品进行生产,得到目标交付文件,即,牛仔材质的衣服制品,并进行交付。也就是说,在各项目阶段,相应的项目配置信息是不同的,在实际应用过程中,需要根据不同的项目阶段,调取相应的项目配置信息对待交付项目进行处理,以得到目标交付文件进行交付。
47.可选的,基于配置文件转换器,从开发环境源代码中提取项目测试配置信息和项目交付配置信息,并分别生成相应的项目测试文件和项目交付文件,包括:确定开发环境源代码相对应的待使用哈希值;从开发环境源代码库中查询源代码哈希值与待使用哈希值相一致的开发环境源代码,以基于配置文件转换器,从开发环境源代码中提取项目测试配置信息和项目交付配置信息;根据项目测试配置信息生成项目测试文件,以及根据项目生成配置信息生成项目交付文件。
48.在本技术方案中,不同项目工程的开发环境源代码的代码存储地址是不同的,基于各代码存储地址可以生成相应的哈希值。待使用哈希值可以理解为待交付项目的开发环境源代码的代码存储路径所生成的哈希值。
49.也就是说,在获取与待交付项目相对应的开发环境源代码时,可以通过在开发环境源代码库中进行查询,若存在与待使用哈希值相同的哈希值,则此哈希值基于待交付项目的开发环境员代码的代码存储路径所对应的哈希值。进一步的,通过对该哈希值进行解密处理,即可得到待交付项目的开发环境员代码的代码存储路径,通过该代码存储路径,可以获取待交付项目所属的开发环境源代码。然后,基于配置文件转换器,可以从获取的开发环境源代码中提取项目测试配置信息,以基于项目测试配置信息生成项目测试文件,同时还可以从开发环境源代码中获取项目交付配置信息,以基于项目交付配置信息生成项目交付文件。
50.s120、从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息。
51.其中,当前项目阶段包括项目开发阶段、项目测试阶段或项目交付阶段,目标文件可以理解为与当前项目阶段相对应的待确定文件。如,当前项目阶段为项目测试阶段,则目
标文件即为与项目测试阶段相对应的待确定文件,即,项目测试文件。相类似地,若当前项目阶段为项目交付阶段,则目标文件即为项目交付文件。待使用信息可以理解为在不同的项目阶段,对待交付项目进行处理时所需要使用的项目配置信息。
52.项目测试信息组中包括至少一个项目测试信息,可以理解的是,在对待交付项目进行测试时,不同项目测试阶段的项目测试信息的数量可以为不同的,如,在项目测试阶段对待交付项目进行测试时,需要基于10个项目测试信息对待交付项目进行测试,这10个项目测试信息所构成的测试集合即为项目测试阶段所对应的项目测试信息组,在项目交付阶段对待交付项目进行测试时,需要基于100个项目测试信息对待交付项目进行测试,这100个项目测试信息所构成的测试集合即为项目交付阶段所对应的项目测试信息组。
53.具体的,为了确定当前对待交付项目进行测试的项目测试信息组,以基于项目测试信息组中的至少一个项目测试信息对待交付项目进行测试,需要确定待交付项目所对应的当前项目阶段,以根据与当前项目阶段相对应的目标文件,确定相应的项目测试信息组。可选的,从所述至少一个待确定文件中,确定与所述待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息,包括:根据所述待交付项目所携带的项目阶段标识,确定所述待交付项目所对应的当前项目阶段,并确定所述当前项目阶段所对应的目标文件;确定所述目标文件所对应的项目信息存储库,并从所述项目信息存储库中,获取所述待交付项目在所述当前项目阶段所对应的待使用信息。
54.其中,项目阶段标识可以理解为用于标记待交付项目所对应的项目阶段的标识性信息。不同的项目阶段可以对应不同的项目信息存储库,在项目信息存储库中包括与相应的项目阶段相对应的待使用信息。
55.在实际应用中,由于待交付项目在整个项目交付过程中需要经历多个不同的项目阶段,且在不同的项目阶段,待交付项目所使用的待使用信息是不同的,如在项目开发阶段,待交付项目需要使用到项目源代码和项目开发环境配置信息;在项目测试阶段,待交付项目需要使用到项目测试配置信息,如对待交付项目进行测试的测试条件等;在项目交付阶段,待交付项目需要使用的与项目交付相关联的项目交付配置信息。具体的,在确定与各项目阶段相对应的待使用信息时,可以基于待交付项目中所携带的项目阶段标识,确定与待交付项目相对应的目标文件,进而确定与目标文件相对应的项目信息存储库,以从相应的项目信息存储库中调取相应的待使用信息。
56.s130、依次基于各项目阶段的待使用信息对待交付项目进行处理,得到相应的待交付文件。
57.在本技术方案中,通过各项目阶段的待使用信息对待交付项目进行处理后,可以得到待交付文件,进而对待交付文件机进行交付。换句话说,在项目开发阶段,生成与待交付项目相对应的项目开发文件,基于项目测试阶段的待使用信息对项目开发文件进行测试,以确定待交付项目是否符合项目测试条件。进一步的,若待交付项目可以通过项目测试阶段的测试,则可以基于项目交付阶段的待使用信息对待交付项目进行打包封装,得到待交付文件,以对待交付文件进行交付,也就是项目上线。
58.可选的,项目阶段为项目开发阶段和项目测试阶段,依次基于各项目阶段的待使用信息对待交付项目进行处理,得到相应的待交付文件,包括:基于项目开发阶段所对应的待使用开发信息,生成与待交付项目相对应的待交付开发文件;获取项目测试阶段所对应
的待使用测试信息,并基于待使用测试信息,对待交付开发文件进行测试,以在测试通过后,确定与待交付项目相对应的待交付文件。
59.示例性地,以待交付项目为具有查询功能的网站项目为例,在项目开发阶段,通常需要根据该网站项目的项目功能进行相应的网站开发,也就是说,需要获取或编辑与该网站项目相对应的项目源代码以及项目开发过程中所使用的项目开发环境源代码,以得到开发后的项目开发文件。
60.进一步的,为了确定得到的项目开发文件是否可用,需要对项目开发文件所对应的网站项目的功能性和稳定性进行测试。此时,需要获取与该网站项目在项目测试阶段的待使用信息,例如,该网站项目中可以根据输入的查询信息,显示相应的查询结果,基于此,在项目测试阶段的待使用信息中,可以包括预先设置的查询信息,以及与各查询信息相对应的查询结果。当在项目测试阶段对待交付项目进行测试时,则可以在该网站项目中输入待使用信息中的查询信息,得到相应的实际查询结果,并确定实际查询结果是否与待使用信息中的查询结果相一致。若是,则表明待交付项目通过项目测试阶段的测试,可以对待交付项目进行交付;反之,则表明待交付项目需要进行修改,直至能够满足项目测试阶段的测试。
61.进一步的,若待交付项目满足项目测试阶段的测试,则进入项目交付阶段,可以理解的是,此时该网站项目已经具备了相应的查询功能,基于此,在项目交付阶段的待使用信息中,包括了真实的查询信息,如,可以是用户在其他网站上的历史搜索信息、搜索习惯以及搜索内容等,以基于项目交付阶段的待使用信息,也就是实际交付的项目信息,对待交付项目进行处理,得到待交付文件,并交付。
62.可选的,基于待使用测试信息,对待交付开发文件进行测试,以在测试通过后,确定与待交付项目相对应的待交付文件,包括:基于待使用测试信息,对待交付开发文件进行测试,得到测试结果;若测试结果为测试通过时,调取与项目交付阶段相对应的待使用交付信息,以基于待使用交付信息对待交付项目进行处理,得到待交付文件。
63.具体的,在待交付项目处于项目测试阶段时,项目测试阶段会对应的相应的项目测试库,在项目测试库中可以包括至少一个待使用测试信息。基于各待使用测试信息对项目开发阶段得到的待交付开发文件进行测试,若测试结果为通过,则表明待交付项目可以进行下一阶段的项目处理,也就是对待交付项目进行打包封装,得到待交付文件。
64.s140、从各待交付文件中确定出目标交付文件,并交付。
65.其中,目标交付文件为实际进行项目交付时所对应的项目文件。
66.具体的,在待交付项目通过项目测试阶段的测试后,可以生成待交付文件,在待交付文件的基础上,获取项目交付阶段的待使用信息,也就是项目交付配置信息对待交付文件进行处理,可以得到目标交付文件,并交付。
67.本发明实施例的技术方案,通过根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件,基于待交付项目所属的项目源代码和开发环境源代码,生成与待交付项目相对应的项目开发文件,同时从开发环境源代码中提取项目测试配置信息,以生成待交付项目所对应的项目测试文件,从开发环境源代码中提取项目交付配置信息,以生成待交付项目所对应的项目交付文件。从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应
的待使用信息,以根据各项目阶段的待使用信息得到相应的待交付文件。依次基于各项目阶段的待使用信息对所述待交付项目进行处理,得到相应的待交付文件,根据待交付项目在项目开发阶段,得到待交付开发文件,并基于项目测试阶段的待使用信息对待交付开发文件进行测试,以在测试通过后,得到待交付文件,进一步的,在待交付文件的基础上,基于项目交付阶段的待使用信息,从各待交付文件中确定出目标交付文件,并交付,也就是,基于项目交付阶段的待使用信息对待交付文件进行处理,得到目标交付文件,以交付。解决了在项目交付的过程中,基于不同的项目阶段对待交付项目处理时,需要对每个项目阶段的文件信息进行打包封装,操作过程繁琐的问题,通过将项目代码和项目配置信息进行分离,实现了提高项目交付速度,简化项目交付的操作流程的效果。
68.实施例二
69.在一个具体的例子中,在项目开发过程中,通常需要经历项目开发阶段、项目测试阶段和项目交付阶段。具体的,如图2所示,确定与待交付项目相对应的项目源代码和开发环境源代码,基于配置文件转换器,可以从开发环境源代码中获取待交付项目的项目测试配置信息,并将项目测试配置信息注入配置容器(即,基于项目测试配置信息生成项目测试文件),得到测试环境所对应的测试配置目标代码。同时,配置文件转换器还可以从开发环境源代码中提取待交付项目的项目交付配置信息,并将项目交付配置信息注入配置容器,得到生产环境所对应的生产配置目标代码(即,基于项目交付配置信息生成项目交付文件)。
70.需要说明的是,每个项目工程所对应的开发环境源代码是不同的,为了区分各项目工程所对应的开发环境源代码,可以对各开发环境源代码所对应的代码存储路径进行加密处理,得到相应的哈希值。在确定与待交付项目相对应的待使用哈希值后,可以对待使用哈希值进行解密,以得到与待交付项目相对应的开发环境源代码。也就是说,只要待交付项目的代码存储路径不变化,则待使用哈希值唯一,基于待使用哈希值即可获取与待交付项目相对应的开发环境源代码。
71.在获取项目测试文件和项目交付文件后,复制两个项目文件,并基于待交付项目的开发环境源代码和项目测试代码生成项目开发文件,并将项目开发文件、项目测试文件和项目交付文件存储在配置仓库中,参见图3。
72.具体而言,待交付项目处于不同的项目阶段时,所使用的待使用信息是不同的。如图4所示,待交付项目处于项目开发阶段时,所使用的待使用信息为待交付项目所对应的项目源代码和开发环境源代码,以根据项目源代码和开发环境源代码生成相应的项目开发文件。进一步的,基于前端应用制品制作器对配置容器中的开发环境配置代码(即,项目开发文件)进行制作,并调取测试环境配置目标代码(即,项目测试阶段所使用的待使用测试信息),将其放置在配置容器中,以基于测试环境配置目标代码对项目开发文件进行测试,并得到相应的测试结果,以根据测试结果确定待交付项目是否满足项目测试阶段的测试。
73.进一步的,若待交付项目通过了项目测试阶段的测试,如图5所示,将待交付项目所对应的测试环境配置目标代码(即,项目测试文件)放置在配置容器中,并基于前端应用制品制作器对其进行处理,得到待交付文件。然后将生产环境配置目标代码(即,项目交付阶段所使用的待使用信息)放置配置容器中,以基于生产环境配置目标代码生成目标交付文件,并进行交付,即,项目上线。
74.本发明实施例的技术方案,通过根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件,基于待交付项目所属的项目源代码和开发环境源代码,生成与待交付项目相对应的项目开发文件,同时从开发环境源代码中提取项目测试配置信息,以生成待交付项目所对应的项目测试文件,从开发环境源代码中提取项目交付配置信息,以生成待交付项目所对应的项目交付文件。从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息,以根据各项目阶段的待使用信息得到相应的待交付文件。依次基于各项目阶段的待使用信息对所述待交付项目进行处理,得到相应的待交付文件,根据待交付项目在项目开发阶段,得到待交付开发文件,并基于项目测试阶段的待使用信息对待交付开发文件进行测试,以在测试通过后,得到待交付文件,进一步的,在待交付文件的基础上,基于项目交付阶段的待使用信息,从各待交付文件中确定出目标交付文件,并交付,也就是,基于项目交付阶段的待使用信息对待交付文件进行处理,得到目标交付文件,以交付。解决了在项目交付的过程中,基于不同的项目阶段对待交付项目处理时,需要对每个项目阶段的文件信息进行打包封装,操作过程繁琐的问题,通过将项目代码和项目配置信息进行分离,实现了提高项目交付速度,简化项目交付的操作流程的效果。
75.实施例三
76.图6为本发明实施例三提供的一种项目交付装置的结构示意图。如图6所示,该装置包括:待确定文件确定模块210、待使用信息确定模块220、待交付文件确定模块230和文件交付模块240。
77.其中,待确定文件确定模块210,用于根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件;其中,待确定文件包括项目开发文件、项目测试文件和项目交付文件中的至少一种;
78.待使用信息确定模块220,用于从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息;其中,当前项目阶段包括项目开发阶段、项目测试阶段或项目交付阶段,待使用信息包括项目开发阶段的待使用开发信息、项目测试阶段的待使用测试信息以及项目交付阶段的待使用交付信息;
79.待交付文件确定模块230,用于依次基于各项目阶段的待使用信息对待交付项目进行处理,得到相应的待交付文件;
80.文件交付模块240,用于从各待交付文件中确定出目标交付文件,并交付。
81.本发明实施例的技术方案,通过根据待交付项目所属的项目源代码和开发环境源代码,确定与待交付项目所对应的至少一个待确定文件,基于待交付项目所属的项目源代码和开发环境源代码,生成与待交付项目相对应的项目开发文件,同时从开发环境源代码中提取项目测试配置信息,以生成待交付项目所对应的项目测试文件,从开发环境源代码中提取项目交付配置信息,以生成待交付项目所对应的项目交付文件。从至少一个待确定文件中,确定与待交付项目的当前项目阶段所对应的目标文件,并确定与目标文件相对应的待使用信息,以根据各项目阶段的待使用信息得到相应的待交付文件。依次基于各项目阶段的待使用信息对所述待交付项目进行处理,得到相应的待交付文件,根据待交付项目在项目开发阶段,得到待交付开发文件,并基于项目测试阶段的待使用信息对待交付开发文件进行测试,以在测试通过后,得到待交付文件,进一步的,在待交付文件的基础上,基于
项目交付阶段的待使用信息,从各待交付文件中确定出目标交付文件,并交付,也就是,基于项目交付阶段的待使用信息对待交付文件进行处理,得到目标交付文件,以交付。解决了在项目交付的过程中,基于不同的项目阶段对待交付项目处理时,需要对每个项目阶段的文件信息进行打包封装,操作过程繁琐的问题,通过将项目代码和项目配置信息进行分离,实现了提高项目交付速度,简化项目交付的操作流程的效果。
82.可选的,待确定文件确定模块包括:源代码获取单元,用于获取待交付项目所属的项目源代码和开发环境源代码;
83.开发文件确定单元,用于基于前端应用构建软件,对项目源代码和开发环境源代码进行处理,得到与待交付项目相对应的项目开发文件;以及
84.测试及交付文件确定单元,用于基于配置文件转换器,从开发环境源代码中提取项目测试配置信息和项目交付配置信息,并分别生成相应的项目测试文件和项目交付文件。
85.可选的,测试及交付文件确定单元包括:哈希值确定子单元,用于确定开发环境源代码相对应的待使用哈希值;
86.配置信息提取子单元,用于从开发环境源代码库中查询源代码哈希值与待使用哈希值相一致的开发环境源代码,以基于配置文件转换器,从开发环境源代码中提取项目测试配置信息和项目交付配置信息;
87.文件生成子单元,用于根据项目测试配置信息生成项目测试文件,以及根据项目生成配置信息生成项目交付文件。
88.可选的,待使用信息确定模块包括:目标文件确定单元,用于根据待交付项目所携带的项目阶段标识,确定待交付项目所对应的当前项目阶段,并确定当前项目阶段所对应的目标文件;
89.待使用信息确定单元,用于确定目标文件所对应的项目信息存储库,并从项目信息存储库中,获取待交付项目在当前项目阶段所对应的待使用信息。
90.可选的,待交付文件确定模块包括:第一交付文件确定单元,用于基于项目开发阶段所对应的待使用开发信息,生成与待交付项目相对应的待交付开发文件;
91.第二交付文件确定单元,用于获取项目测试阶段所对应的待使用测试信息,并基于待使用测试信息,对待交付开发文件进行测试,以在测试通过后,确定与待交付项目相对应的待交付文件。
92.可选的,第二交付文件确定单元包括:测试结果确定子单元,用于基于待使用测试信息,对待交付开发文件进行测试,得到测试结果;
93.交付文件确定子单元,用于若测试结果为测试通过时,调取与项目交付阶段相对应的待使用交付信息,以基于待使用交付信息对待交付项目进行处理,得到待交付文件。
94.本发明实施例所提供的项目交付装置可执行本发明任意实施例所提供的项目交付方法,具备执行方法相应的功能模块和有益效果。
95.实施例四
96.图7示出了本发明的实施例的电子设备10的结构示意图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,
诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备(如头盔、眼镜、手表等)和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本发明的实现。
97.如图7所示,电子设备10包括至少一个处理器11,以及与至少一个处理器11通信连接的存储器,如只读存储器(rom)12、随机访问存储器(ram)13等,其中,存储器存储有可被至少一个处理器执行的计算机程序,处理器11可以根据存储在只读存储器(rom)12中的计算机程序或者从存储单元18加载到随机访问存储器(ram)13中的计算机程序,来执行各种适当的动作和处理。在ram 13中,还可存储电子设备10操作所需的各种程序和数据。处理器11、rom 12以及ram 13通过总线14彼此相连。输入/输出(i/o)接口15也连接至总线14。
98.电子设备10中的多个部件连接至i/o接口15,包括:输入单元16,例如键盘、鼠标等;输出单元17,例如各种类型的显示器、扬声器等;存储单元18,例如磁盘、光盘等;以及通信单元19,例如网卡、调制解调器、无线通信收发机等。通信单元19允许电子设备10通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
99.处理器11可以是各种具有处理和计算能力的通用和/或专用处理组件。处理器11的一些示例包括但不限于中央处理单元(cpu)、图形处理单元(gpu)、各种专用的人工智能(ai)计算芯片、各种运行机器学习模型算法的处理器、数字信号处理器(dsp)、以及任何适当的处理器、控制器、微控制器等。处理器11执行上文所描述的各个方法和处理,例如项目交付方法。
100.在一些实施例中,项目交付方法可被实现为计算机程序,其被有形地包含于计算机可读存储介质,例如存储单元18。在一些实施例中,计算机程序的部分或者全部可以经由rom 12和/或通信单元19而被载入和/或安装到电子设备10上。当计算机程序加载到ram 13并由处理器11执行时,可以执行上文描述的项目交付方法的一个或多个步骤。备选地,在其他实施例中,处理器11可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行项目交付方法。
101.本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
102.用于实施本发明的项目交付方法的计算机程序可以采用一个或多个编程语言的任何组合来编写。这些计算机程序可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,使得计算机程序当由处理器执行时使流程图和/或框图中所规定的功能/操作被实施。计算机程序可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
103.在本发明的上下文中,计算机可读存储介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的计算
机程序。计算机可读存储介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。备选地,计算机可读存储介质可以是机器可读信号介质。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
104.为了提供与用户的交互,可以在电子设备上实施此处描述的系统和技术,该电子设备具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给电子设备。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
105.可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)、区块链网络和互联网。
106.计算系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,又称为云计算服务器或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务中,存在的管理难度大,业务扩展性弱的缺陷。
107.应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发明中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本发明的技术方案所期望的结果,本文在此不进行限制。
108.上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1