CN114528012A - 编排文件处理方法、装置、设备及介质 - Google Patents

编排文件处理方法、装置、设备及介质 Download PDF

Info

Publication number
CN114528012A
CN114528012A CN202011212469.3A CN202011212469A CN114528012A CN 114528012 A CN114528012 A CN 114528012A CN 202011212469 A CN202011212469 A CN 202011212469A CN 114528012 A CN114528012 A CN 114528012A
Authority
CN
China
Prior art keywords
field
target
control
layout file
target control
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
CN202011212469.3A
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.)
Beijing Megvii Technology Co Ltd
Original Assignee
Beijing Megvii 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 Beijing Megvii Technology Co Ltd filed Critical Beijing Megvii Technology Co Ltd
Priority to CN202011212469.3A priority Critical patent/CN114528012A/zh
Publication of CN114528012A publication Critical patent/CN114528012A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/73Program documentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Library & Information Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明实施例提供了一种编排文件处理方法、装置、设备及介质,所述方法包括:获取编排文件的内容;对所述编排文件的内容进行解析,得到解析结果;根据所述解析结果中属于预设字段集合的目标字段的属性,确定所述目标字段对应的目标控件;将所述目标控件渲染到网页页面上。采用本发明实施的编排文件处理方法,可以快速有效地生成编排文件。

Description

编排文件处理方法、装置、设备及介质
技术领域
本发明涉及数据处理技术领域,特别是涉及一种编排文件处理方法、装置、设备及介质。
背景技术
编排文件是指系统的配置文件,主要用于配置容器服务的各个实例的运行参数、环境变量和监控告警等信息。其中,容器服务是指docker容器块,每一个虚拟的环境可以视为一个容器,其中,容器中可以有多个服务,每一个服务对应一个实例,一个实例可以认为是一种功能的具体实现。
目前编排文件在交付实施环节时,即交付给使用方进行使用时,一般开发人员交付编排文件给现场实施人员,现场实施人员将编排文件导入系统后,就可以创建并启动所有服务。但是,在交互过程中,编排文件可能有错误,不能够正常运行服务,或者面临客户的不同需求,需要修改编排文件。
此种情况下,需要开发人员重新生成编排文件给到现场实施人员。然而,重新生成编排文件时,一般都需要开发人员利用文本编辑器重新生成编排文件,但是利用文本编辑器重新修改编排文件很容易出错或漏填,从而导致文件错误,效率十分低下。
发明内容
鉴于上述问题,提出了本发明实施例的一种编排文件处理方法、装置、设备及介质,以便克服上述问题或者至少部分地解决上述问题。
为了解决上述问题,本发明的第一方面,公开了一种编排文件处理方法,所述方法包括:
获取编排文件的内容;
对所述编排文件的内容进行解析,得到解析结果;
根据目标字段的属性,确定所述目标字段对应的目标控件,其中,所述目标字段为所述解析结果中属于预设字段集合的字段;
将所述目标控件渲染到网页页面上。
可选地,对所述编排文件的内容进行解析,得到解析结果,包括:
对所述编排文件的内容进行解析,生成javascript对象。
可选地,所述解析结果中属于预设字段集合的目标字段,是按照以下步骤确定的:
根据所述预设字段集合中各个字段各自对应的控件在所述网页页面上的渲染顺序,逐个检测所述预设字段集合中每个字段是否包含于所述解析结果中。
可选地,根据所述解析结果中属于预设字段集合的目标字段的属性,确定所述目标字段对应的目标控件,包括:
根据所述解析结果中属于预设字段集合的目标字段的语义,确定所述目标字段对应的目标控件;或
根据所述解析结果中属于预设字段集合的目标字段的类型,确定所述目标字段对应的目标控件;
其中,类型为字符类型的目标字段对应的目标控件为input text输入控件,类型为数字类型的目标字段对应的目标控件为input number输入控件,类型为布尔值类型的目标字段对应的目标控件为switch开关控件,类型为数组类型的目标字段对应的目标控件为textarea输入控件。
可选地,将所述目标控件渲染到网页页面上,包括:
将所述目标字段的字段值填充在所述目标控件中,以及将所述目标字段对应的控件显示名作为所述目标控件的名称渲染在所述网页页面上。
可选地,将所述目标控件渲染到网页页面上之后,所述方法还包括:
通过所述目标控件接收对所述目标控件进行的编辑操作;
响应于所述编辑操作,更新所述目标控件所对应的目标字段的字段值。
可选地,在响应于所述编辑操作,更新所述目标控件所对应的目标字段的字段值之后,所述方法还包括:
将所述网页页面的格式转换为指定格式,将格式转换后的网页页面存储到数据库或本地。
可选地,在将所述网页页面的格式转为指定格式,将格式转换后的网页页面存储到数据库或本地之前,所述方法还包括:
校验所述预设字段集合中各个字段在所述网页页面上的字段值是否为空;
在存在字段值为空的字段时,输出提示信息。
本发明实施例的第二方面,提供了一种编排文件处理装置,所述装置包括:
获取模块,用于获取编排文件的内容;
解析模块,用于对所述编排文件的内容进行解析,得到解析结果;
控件确定模块,用于根据目标字段的属性,确定所述目标字段对应的目标控件;其中,所述目标字段为所述解析结果中属于预设字段集合的字段;
渲染模块,用于将所述目标控件渲染到网页页面上。
本发明实施例的第三方面,还公开了一种电子设备,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述设备执行如本发明第一方面实施例所述的编排文件处理方法。
本发明实施例的第四方面,还公开了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如本发明第一方面实施例所述的编排文件处理方法。
本发明实施例包括以下优点:
在本发明实施例中,可以对获取的编排文件的内容进行解析,得到解析结果,进而根据解析结果中属于预设字段集合的目标字段的属性,确定目标字段对应的目标控件,进而将目标控件渲染到网页页面上。由于本申请对编排文件可以自动解析,且按照解析出的目标字段的属性,自动确定其对应的控件,进而将控件渲染到网页页面上,从而可以通过对网页页面上的控件进行的内容编辑,在线修改编排文件,为用户提供便捷的修改操作。同时,可以基于一个编排文件,生成不同版本的编排文件,发送到不同的现场环境,避免了手动修改编排文件的麻烦。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例的编排文件编辑器的页面示意图;
图2是本发明实施例中编排文件编辑器的渲染后页面示意图;
图3是本发明实施中的一种编排文件处理方法的步骤流程图;
图4是本发明实施中的一种编排文件处理方法的完整流程示意图;
图5是本发明实施中一种编排文件处理装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请实施例中,针对利用文本编辑器修改编排文件容易导致需要漏填或填错的问题,发明人提出了以下发明构思:开发一个WEB版的service.yaml编排文件编辑器,该编排文件编辑器可以为开发人员提供更加便捷和友好的界面,并且允许开发人员或者现场实施人员在线编辑修改,从而提高重新生成编排文件的效率。
其中,该编排文件编辑器可以运行在web页面。
参照图1、图2以及图3所示,其中,图1示出了本申请实施例的编排文件编辑器的页面示意图,图2示出了本申请示例的编排文件编辑器的渲染页面示意图,图3示出了本申请实施例的一种编排文件处理方法的步骤流程图。
下面,结合图1至图3所示,对本申请实施例的编排文件处理方法进行介绍,如图3所示,具体可以包括以下步骤:
步骤S101:获取编排文件的内容。
本实施例中,编排文件可以理解为是配置文件,编排文件中可以配置多个实例的运行参数、环境变量和监控告警等信息。其中,本申请的编排文件可以指devops系统中的service.yaml编排文件,service.yaml类似docker-compose.yaml文件,可以根据service.yaml创建并启动所有服务。其中,实例是指docker容器块中的多个服务各自对应的实例。
其中,devops系统可以导入编排文件,并根据编排文件创建容器以及根据编排文件中的配置信息运行容器中的各个实例。
具体实施时,编排文件编辑器可以从服务器拉取service.yaml编排文件,或者,从本地获取。其中,在从服务器获取编排文件时,开发人员可以预先将编排文件上传到服务器,并将存储地址进行发布,这样,现场实施人员可以在编排文件编辑器中输入存储地址,进而该编排文件编辑器可以依据该存储地址从服务器处下载编排文件。其中,服务器可以是指任何一个具有编排文件的服务器。
其中,在从本地获取编排文件时,本地可以是指在交付实施环节中所使用的设备或devops系统。
步骤S102:对所述编排文件的内容进行解析,得到解析结果。
本实施例中,编排文件的内容可以包括配置容器服务的各个实例的运行参数、环境变量和监控告警等信息。其中,对编排文件的内容进行解析可以是指对编排文件中各个实例的配置信息分别所包括的各个字段进行解析,得到与各个实例分别对应的多个字段的字段名和字段值,这些字段的组合便可以表征编排文件的内容,其中,字段的字段名可以用于标识该字段,而字段的字段值可以是指该字段的取值,例如,字段名是“runtime”,字段值是“12”,整个字段则表示“运行时间是12”。
如图1所示,在编排文件的页面展示了编排文件所包括的各个实例条目,例如,具有api(接口)实例、task(任务)实例、monitor(镜像)实例等。其中,每一个实例的配置信息均对应多个字段。
步骤S103:根据目标字段的属性,确定所述目标字段对应的目标控件;其中,所述目标字段为所述解析结果中属于预设字段集合的字段。
本实施例中,对编排文件进行解析得到了与各实例分别对应的多个字段,预设字段集合可以是指编排文件编辑器预先指定的多种字段的集合。属于预设字段集合中的字段是其字段值可以增删改的字段,会展示给用户;由编排文件解析出的不属于预设字段组合中的字段是用户不可或不用进行增删改的字段,不展示给用户。其中,预设字段集合中包括多个预设字段的字段名,多个预设字段可以是不同属性的。
其中,字段的属性可以是指字段的类型,可以包括但不限于数值类型、文本类型、布尔类型等。不同类型的字段可以对应不同类型的控件,例如,数值类型的字段可以对应数字输入控件,布尔类型的控件可以对应开关控件,文本类型的控件可以对应输入文本控件。在输入控件内可以显示字段值并允许对字段值进行修改。
具体实施时,针对每个实例所包括的多个字段,可以根据多个字段各自的字段名,从该多个字段中确定属于预设字段集合的目标字段,进而可以根据目标字段的类型,确定相应的目标控件。
步骤S104:将所述目标控件渲染到网页页面上。
本实施例中,针对每个实例,可以将该实例中的各个目标字段对应的目标控件渲染到网页页面上。其中,在一种示例中,在渲染目标控件时,当解析结果中包含某目标字段的字段值时,可以将目标字段的字段值填充在目标控件中,以及将目标字段对应的控件显示名作为目标控件的名称,一并渲染在网页页面中。目标字段对应的控件显示名可以与目标字段的字段名相同,也可以与目标字段的字段名不同。例如,目标字段的字段名为runtime,目标字段对应的控件显示名可以为“运行时间”。
具体实施时,在将目标字段的字段值填充在目标控件中时,可以根据目标字段的类型,选择与该类型对应的填充方式,将目标字段的字段值填充到目标控件中。
参照图2所示,示出了针对api实例的网页页面,在该网页页面上渲染了目标字段的目标控件。例如,目标字段的字段名是“log_max_gigabytes”,目标字段对应的控件显示名/目标控件的名称是日志最大容量,目标字段是数值类型的字段,目标控件的类型为数字输入控件,则可以将目标字段的字段值“1GB”填充在控件中,再以“日志最大容量”为目标控件的名称将目标控件渲染到网页页面上。又例如,字段名为“net”的目标字段是布尔值类型,字段值包括“bridge”和“host”两个可选值,目标控件为单选框组合控件,则将“bridge”和“host”的值填充在单选框组合控件中并进行渲染。
如图2所示,将目标字段对应的目标控件渲染显示在网页页面上时,可以允许开发人员在网页页面上对目标控件中填充的字段值进行更改,这样,便可以通过目标控件接收对该目标控件所填充的内容的编辑修改,从而对目标控件所对应的目标字段的字段值进行更新。
例如,需要将日志最大容量修改为2GB,则实施人员直接在日志最大容量控件中将“1GB”更改为“2GB”即可,例如,需要将网络模式更改为bridge模式,则直接点击与bridge模式对应的switch开关控件即可,从而方便了开发人员的修改。
如此,开发人员便可以在各个实例的渲染界面中,对相应的配置信息进行修改,从而提高了对编排文件进行修改的效率,且由于不同类型的字段对应不同的控件,则方便了实施人员的修改,从而提高了编排文件的修改效率。
下面,对本实施例提出的编排文件处理方法进行详细说明,参照图4所示,示出了本实施例中编排文件处理方法的完整流程示意图,如图4所示,具体地包括以下步骤:
步骤S201:获取编排文件的内容。
本实施例中,开发人员可以预先将编排文件上传到服务器,进而实施人员在现场可以在编排文件编辑器中输入上传的地址,进而从该地址中下载编排文件。当然,开发人员也可以将编排文件上传到编排文件编辑器所在的设备中,进而可以从本地获取该编排文件。
其中,编排文件可以是service.yaml编排文件。如图4所示,可以从服务器拉取是service.yaml编排文件或从本地上传service.yaml编排文件。
步骤S202:对所述编排文件的内容进行解析,得到解析结果。具体地,可以对所述编排文件的内容进行解析,生成javascript对象。
本实施例中,可以采用js-yaml开源库对编排文件的内容进行解析,从而将读取到的service.yaml编排文件的内容解析为Javascript Object对象,即如图4所示的JSObject对象。其中,Object对象是所有JavaScript对象的超类(基类)。
步骤S203:根据目标字段的属性,确定所述目标字段对应的目标控件;其中,目标字段为所述解析结果中属于预设字段集合的字段。
其中,可以逐个获得目标字段。
具体地,可以根据所述预设字段集合中各个字段各自对应的控件在所述网页页面上的渲染顺序,逐个检测所述预设字段集合中每个字段是否包含于所述解析结果中,将包含在解析结果中的字段确定为目标字段。
其中,渲染顺序可以是指控件在网页页面上的显示位置从高到低的顺序,例如,位置位于网页页面最上端的控件可以先渲染。如此,如图4所示,可以按照预设字段集合中各个字段的渲染顺序,由排列靠前的字段名(即最先渲染的字段)到排列靠后的字段名逐项检查预设字段集合中是否包括在解析结果中,若是,则将该解析结果中的相应字段作为目标字段,并以适当的控件渲染到网页页面。
例如,网页面上显示的实例是API实例,第一项是hostname,就去检查解析结果中API实例对应的字段中是否有字段名为hostname的字段,如果有就用该字段对应的控件渲染出来。依此类推,逐项检查预设字段集合中的各个字段,并以各个字段对应的控件渲染。
目标字段的属性可以根据解析结果确定,即解析结果中不仅包括字段名、字段值,还包括字段属性。目标字段的属性还可以根据预设字段集合确定,即预设字段集合包括字段名和字段属性。在一些场景中,解析结果和预设字段集合中均包含字段属性。为了避免预设字段集合中的字段名虽然与解析结果中的字段的字段名相匹配,但是字段属性不匹配而导致控件渲染出现错误的情况,在确定目标字段时,可在解析结果中字段名与预设字段集合中的字段名匹配、且解析结果中的字段属性与预设字段集合对应字段的字段属性匹配时,才将解析结果中的字段确定为目标字段。若解析结果中字段名与预设字段集合中的字段名匹配、但解析结果中的字段属性与预设字段集合对应字段的字段属性不匹配时,不认为解析结果中的字段为目标字段。
在另一场景中,在确定目标字段时可不考虑字段属性,即只要解析结果中字段名与预设字段集合中的字段名匹配,即认为解析结果中的字段为目标字段。此时可将预设字段集合包含的字段属性作为目标字段属性,即保证当解析结果中的字段属性与预设字段集合中的字段属性不一致时,以预设字段集合中的字段属性为准。
当然,若解析结果中出现了预设字段集合以外的字段,可以不做任何处理、直接忽略。也就是说,本申请实施例可以只把属于预设字段集合中的字段进行渲染处理,其他字段,例如用户不可更改的字段不会渲染并显示。
其中,在确定所述目标字段对应的目标控件时,可以采用以下两种方式中的任意一种方式确定:
方式一:根据所述解析结果中属于预设字段集合的目标字段的语义,确定所述目标字段对应的目标控件。
方式二:根据所述解析结果中属于预设字段集合的目标字段的类型,确定所述目标字段对应的目标控件。
本实施例中,确定目标字段对应的目标控件的策略可以是:根据目标字段的类型渲染成相应的控件,或者,根据目标字段的语义选择目标控件。
其中,在上述方式一中,目标字段的语义可以理解为是目标字段的字段名所表达的含义。在上述方式二中,类型为字符类型的目标字段对应的目标控件为input text输入控件,类型为数字类型的目标字段对应的目标控件为input number输入控件,类型为布尔值类型的目标字段对应的目标控件为switch开关控件,类型为数组类型的目标字段对应的目标控件为textarea输入控件,枚举类型字段会被渲染为radio group单选框组合控件。
其中,textarea输入控件为多行输入框,可以用于输入比较长的内容。
其中,如图2所示,在根据目标字段的含义选择目标控件时,例如网络模式net字段会渲染为radio group单选框组合控件,因为net只有两个可选值:host和bridge。则在目标字段是“net”时,则可以将单选框组合控件进行渲染,并将“net”的字段值host和bridge填充到单选框组合控件。又例如,对于服务类型“kind”字段,其类型包括三种“daemon”、“runonce”、“utility”,则可以以单选框组合控件进行渲染,进而将字段值“daemon”、“runonce”、“utility”填充到单选框组合控件中的各个子控件中。
由上述示例也可以看出,一个目标字段的字段值可以包括一个或多个元素,因此,在将目标控件渲染到网页页面上时,可以将对应的字段值均填充到目标控件中。
其中,在又一些实施例中,在根据目标字段的语义或者类型确定相应的目标控件时,也可以对目标字段的类型进行检查,具体地,可以根据预设字段集合记载的字段名、类型、字段值范围等,检测解析结果中的目标字段的类型是否出现错误。比如,预设字段集合中的字段名是“log_max_gigabytes”,类型是数值类型,对应的字段值范围是“0-512GB”,若解析结果中字段“log_max_gigabytes”不为数值类型或者字段值不在“0-512GB”的范围内,则表征字段“input number”出现了错误。
可见,本实施例中的预设字段集合中记载了需要渲染的字段的字段名、字段类型和字段值范围,由此,预设字段集合便可以理解为是字段的标准的集合,基于该预设字段集合可以检测解析结果中字段的错误,同时,也可以基于预设字段集合,对出现错误的字段进行纠正。
具体实施时,检测到目标字段的类型错误,可以将目标字段的类型转换成预设字段集合中所记载的该目标字段的类型,例如,目标字段A需要是字符串类型,service.yaml文件解析结果中目标字段A对应为数字类型,则将目标字段A的类型自动转成字符串类型,进而按照字符串类型选择相应控件。同样地,在检测到目标字段的字段值范围出现错误时,可以将目标字段的字段值更改在预设字段集合中所记载的字段值范围中。
当然,在又一些示例中,若检测到目标字段的类型错误、字段值范围错误时,可以发出告警提示信息,以提示实施人员目标字段的类型错误,继而实施人员可以在生成编排文件时,注意这些目标字段的类型设置。
步骤S204:将所述目标控件渲染到网页页面上。
本实施例中,可以将确定好的目标控件渲染到网页页面上,在渲染时,也可以将目标字段的值一并渲染在目标控件中,例如,目标字段是日志最大容量(log_max_gigabytes),则可以将目标控件渲染在网页页面上,同时将log_max_gigabytes的字段值“1”填充在目标控件内。
当然,若目标字段的字段值为空时,即解析结果中该字段的字段值就为空,也可以将目标控件渲染到网页页面上后,不在目标控件中填充对应的字段值,这样,便可以由用户自行对目标控件的内容进行填写,例如将控件渲染在网页页面上后,用户可以在该控件中键入“1”。
步骤S205:将所述网页页面的格式转换为指定格式,将格式转换后的网页页面存储到数据库或本地。
本实施例中,在对目标控件所对应的目标字段的字段值进行更新后,可以将更新后的网页页面的格式转换为编排文件的格式,由于在进行解析时,是将读取到的service.yaml编排文件的内容解析为Javascript Object对象,因此,可以将网页页面的格式的内容或者该内容对应的Javascript Object对象转换为yaml格式的内容,从而重新形成service.yaml编排文件,这样,可以将重新形成的service.yaml编排文件存储到数据库或者本地。
其中,本地是指编排文件编辑器所在的设备,数据库可以是指用于存储编排文件的数据库,现场实施人员即可以从数据库中下载重新形成的service.yaml编排文件,以进行现场运行。
其中,在将所述网页页面的格式转换为指定格式,将格式转换后的网页页面存储到数据库或本地时,也可以先校验所述预设字段集合中各个字段在所述网页页面上的字段值是否为空;在存在字段值为空的字段时,输出提示信息。
由于本实施例中,目标控件可以是textarea输入控件或者是单选框组合控件,这意味着用户可以通过目标控件对字段值进行编辑,如此,如图4所示,在对网页页面的内容进行格式转换之前,可以检测网页页面上所有字段的字段值是否为空,即可以检测对应的目标控件是否有未填项,更进一步地,可以检测内容为必填项的目标控件是否未填写。
其中,若有未填项的目标控件,可以给出适当提示信息。其中,该提示信息中可以包括未填写目标控件所在的实例和对应的目标字段的字段名。例如,可以是“xx实例xx项目不能为空”。
其中,若不存在未填项,则可以对网页页面的内容进行格式转换,转换为service.yaml编排文件,并将service.yaml编排文件进行存储。
采用本发明实施例的技术方案,由于将编排文件的内容按照字段的类型确定了相应的目标控件,并将目标控件渲染在网页页面上,使得用户可以对目标控件的内容进行填写,从而在网页页面上可以让用户一目了然地对编排文件的内容进行修改和编辑,在修改和编辑完成后,重新形成编排文件,从而方便了实施人员在现场对编排文件的修改,提高了修改效率。
且由于可以自动校验字段对应的目标控件是否未填写,这样,避免了实施人员漏填内容,从而保证了修改编排文件的完整性,进一步提高了修改效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图5所示,示出了本申请实施例的编排文件处理装置的结构框图,如图5所示,所述装置具体可以包括以下模块:
获取模块501,用于获取编排文件的内容;
解析模块502,用于对所述编排文件的内容进行解析,得到解析结果;
控件确定模块503,用于根据目标字段的属性,确定所述目标字段对应的目标控件;其中,所述目标字段为所述解析结果中属于预设字段集合的字段;
渲染模块504,用于将所述目标控件渲染到网页页面上。
可选地,所述解析模块502具体可以用于对所述编排文件的内容进行解析,生成javascript对象。
可选地,所述解析结果中属于预设字段集合的目标字段,是按照以下步骤确定的:根据所述预设字段集合中各个字段各自对应的控件在所述网页页面上的渲染顺序,逐个检测所述预设字段集合中每个字段是否包含于所述解析结果中,将包含在解析结果中的字段确定为目标字段。
可选地,所述控件确定模块503具体可以是以下任意一种单元:
语义解析单元,用于根据所述解析结果中属于预设字段集合的目标字段的语义,确定所述目标字段对应的目标控件;或
类型解析单元,用于根据所述解析结果中属于预设字段集合的目标字段的类型,确定所述目标字段对应的目标控件;
其中,类型为字符类型的目标字段对应的目标控件为input text输入控件,类型为数字类型的目标字段对应的目标控件为input number输入控件,类型为布尔值类型的目标字段对应的目标控件为switch开关控件,类型为数组类型的目标字段对应的目标控件为textarea输入控件。
可选地,所述渲染模块504,具体用于将所述目标字段的字段值填充在所述目标控件中,以及将所述目标字段对应的控件显示名作为所述目标控件的名称渲染在所述网页页面上。
可选地,所述装置还可以包括以下模块:
接收模块,用于通过所述目标控件接收对所述目标控件进行的编辑操作;
更新模块,用于响应于所述编辑操作,更新所述目标控件所对应的目标字段的字段值。
可选地,所述装置还可以包括以下模块:
存储模块,用于将所述网页页面的格式转换为指定格式,将格式转换后的网页页面存储到数据库或本地。
可选地,所述装置还可以包括以下模块:
校验模块,用于校验所述预设字段集合中各个字段在所述网页页面上的字段值是否为空;
信息输出模块,用于在存在字段值为空的字段时,输出提示信息。
需要说明的是,装置实施例与方法实施例相近,故描述的较为简单,相关之处参见方法实施例即可。
本发明实施例还提供了一种电子设备,该电子设备可以用于执行编排文件处理方法,可以包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器被配置为执行所述的编排文件处理方法。
本发明实施例还提供了一种计算机可读存储介质,其存储的计算机程序使得处理器执行如本发明实施例所述的编排文件处理方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种编排文件处理方法、装置、设备和存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (11)

1.一种编排文件处理方法,其特征在于,包括:
获取编排文件的内容;
对所述编排文件的内容进行解析,得到解析结果;
根据目标字段的属性,确定所述目标字段对应的目标控件;其中,所述目标字段为所述解析结果中属于预设字段集合的字段;
将所述目标控件渲染到网页页面上。
2.根据权利要求1所述的方法,其特征在于,对所述编排文件的内容进行解析,得到解析结果,包括:
对所述编排文件的内容进行解析,生成javascript对象。
3.根据权利要求1或2所述的方法,其特征在于,所述目标字段,是按照以下步骤确定的:
根据所述预设字段集合中各个字段各自对应的控件在所述网页页面上的渲染顺序,逐个检测所述预设字段集合中每个字段是否包含于所述解析结果中,将包含在解析结果中的字段确定为目标字段。
4.根据权利要求1-3任一项所述的方法,其特征在于,根据目标字段的属性,确定所述目标字段对应的目标控件,包括:
根据所述目标字段的语义,确定所述目标字段对应的目标控件;或
根据所述目标字段的类型,确定所述目标字段对应的目标控件;
其中,类型为字符类型的目标字段对应的目标控件为input text输入控件,类型为数字类型的目标字段对应的目标控件为input number输入控件,类型为布尔值类型的目标字段对应的目标控件为switch开关控件,类型为数组类型的目标字段对应的目标控件为textarea输入控件。
5.根据权利要求1-4任一项所述的方法,其特征在于,将所述目标控件渲染到网页页面上,包括:
将所述目标字段的字段值填充在所述目标控件中,以及将所述目标字段对应的控件显示名作为所述目标控件的名称渲染在所述网页页面上。
6.根据权利要求1-5所述的方法,其特征在于,将所述目标控件渲染到网页页面上之后,所述方法还包括:
通过所述目标控件接收对所述目标控件进行的编辑操作;
响应于所述编辑操作,更新所述目标控件所对应的目标字段的字段值。
7.根据权利要求6所述的方法,其特征在于,在响应于所述编辑操作,更新所述目标控件所对应的目标字段的字段值之后,所述方法还包括:
将更新字段值后的网页页面的格式转换为指定格式,将格式转换后的网页页面存储到数据库或本地。
8.根据权利要求7所述的方法,其特征在于,在将所述网页页面的格式转为指定格式,将格式转换后的网页页面存储到数据库或本地之前,所述方法还包括:
校验所述预设字段集合中各个字段在所述网页页面上对应的字段值是否为空;
在存在字段值为空的字段时,输出提示信息。
9.一种编排文件处理装置,其特征在于,所述装置包括:
获取模块,用于获取编排文件的内容;
解析模块,用于对所述编排文件的内容进行解析,得到解析结果;
控件确定模块,用于根据所述解析结果中属于预设字段集合的目标字段的属性,确定所述目标字段对应的目标控件;
渲染模块,用于将所述目标控件渲染到网页页面上。
10.一种电子设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行时实现如权利要求1-8一所述的编排文件处理方法。
11.一种计算机可读存储介质,其特征在于,其存储的计算机程序使得处理器执行如权利要求1-8任一所述的编排文件处理方法。
CN202011212469.3A 2020-11-03 2020-11-03 编排文件处理方法、装置、设备及介质 Pending CN114528012A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011212469.3A CN114528012A (zh) 2020-11-03 2020-11-03 编排文件处理方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011212469.3A CN114528012A (zh) 2020-11-03 2020-11-03 编排文件处理方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN114528012A true CN114528012A (zh) 2022-05-24

Family

ID=81619922

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011212469.3A Pending CN114528012A (zh) 2020-11-03 2020-11-03 编排文件处理方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114528012A (zh)

Similar Documents

Publication Publication Date Title
US10083242B2 (en) System and method for data-driven web page navigation control
CN111290951B (zh) 测试方法、终端、服务器、系统及存储介质
US9342300B2 (en) Analyzing components related to a software application in a software development environment
CN107528718B (zh) 获取资源的方法、装置和系统
US10305918B1 (en) Monitoring for hybrid applications
CN110704031B (zh) 软件应用项目的创建方法、装置及电子设备
CN114303134A (zh) 用于维护视觉一致性的方法、装置和计算机可读介质
CN111949607A (zh) 一种udt文件的监控方法、系统和装置
US9934291B2 (en) Dynamic presentation of a results set by a form-based software application
CN117648257A (zh) 一种Linux操作系统下的Web自动化测试方法及系统
CN113259397B (zh) 一种执行预案的方法、装置、设备及可读存储介质
CN112685040B (zh) 安卓系统中界面文件的生成方法、装置、设备及存储介质
US9104573B1 (en) Providing relevant diagnostic information using ontology rules
CN114756228A (zh) 页面处理方法、装置、设备及存储介质
CN113010149A (zh) 应用加载方法、装置、用户终端和服务器
CN114528012A (zh) 编排文件处理方法、装置、设备及介质
US11843679B2 (en) Automated dependency management based on page components
CN115686515A (zh) 参数可视化配置界面生成方法、装置、介质和电子设备
CN114527993A (zh) 应用程序部署方法、装置、设备及介质
CN113868005A (zh) 网页异常的监控方法和装置
CN113419738A (zh) 接口文档的生成方法、装置及接口管理设备
CN113485746A (zh) 应用程序接口文档的生成方法及装置
CN113377368A (zh) 项目开发方法、装置、服务器及存储介质
CN107168684B (zh) 一种生成内容编辑表单的方法及装置
CN111008150A (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