CN107678766A - 一种系统配置文件的升降级方法 - Google Patents

一种系统配置文件的升降级方法 Download PDF

Info

Publication number
CN107678766A
CN107678766A CN201710987484.7A CN201710987484A CN107678766A CN 107678766 A CN107678766 A CN 107678766A CN 201710987484 A CN201710987484 A CN 201710987484A CN 107678766 A CN107678766 A CN 107678766A
Authority
CN
China
Prior art keywords
configuration file
demotion
promotion
configuration
sys
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.)
Withdrawn
Application number
CN201710987484.7A
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.)
G Cloud Technology Co Ltd
Original Assignee
G Cloud 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 G Cloud Technology Co Ltd filed Critical G Cloud Technology Co Ltd
Priority to CN201710987484.7A priority Critical patent/CN107678766A/zh
Publication of CN107678766A publication Critical patent/CN107678766A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及软件版本升级技术领域,特别是一种系统配置文件的升降级方法。本发明的方法是设置系统升降级配置文件A;升级组件读取自身配置文件B;升级组件根据系统升降级配置文件A内容定义系统配置文件C。本发明提出了一种系统配置文件的升降级方法,具有通用性,方便异构系统在进行版本升级时配置文件配置项的管理。

Description

一种系统配置文件的升降级方法
技术领域
本发明涉及软件版本升级技术领域,特别是一种系统配置文件的升降级方法。
背景技术
随着软件系统的功能越来越强大,相应的其复杂度也会越来越大。特别的,软件系统在整个生命周期内需要不断的升级,有时候根据实际需要也需要从高级版本降低到更低版本。系统的每一层升降级都会带来很大的工作量,尤其是当系统是一个异构多组件系统时,其升降级难度和复杂度会非常大。
发明内容
本发明解决的技术问题在于提出一种系统配置文件的升降级方法,实现对系统版本升级过程中系统配置文件版本的有效管理,简化升降级版本的复杂度和难度。
本发明解决上述技术问题的技术方案是:
所述的方法包括如下步骤:
(1)设置系统升降级配置文件A;
(2)升级组件读取自身配置文件B;
(3)升级组件根据系统升降级配置文件A内容定义系统配置文件C;
所述设置系统升降级配置文件A包括:
(11)系统升降级配置文件文件名设置,包括如下设置:
数字版本号_升降级标识_异构系统组件标识#异构系统组件配置文件标识;
(12)系统升降级配置文件文件内容设置,包括如下设置:
CFG_PATH=XXXX 系统组件配置文件路径
[DEFAULT] 指定在系统配置文件的默认区域
N_XXXX=value N代表新增配置项
E_XXXX=value E代表修改配置项
D_XXXX=value D代表删除配置项
[xm_test] 指定配置项所在系统配置文件的区域
N#_XXXX=value N#表示新增注释配置项
E#_XXXX=value E#表示修改注释配置项
D#_XXXX=value D#表示删除注释配置项
所述升级组件根据系统升降级配置文件A内容定义系统配置文件C进一步包括:
(31)如指定版本进行配置文件升级,则组件程序依次读取从最小版本到指定版本的所有版本对应升降级配置文件A,读取内容进行系统配置文件C的修改;
(32)如未指定版本进行配置文件升级,则组件程序依次读取从最小版本到最新版本的所有版本对应升降级配置文件A,读取内容进行系统配置文件C的修改。
所述系统可以是单个组件的简单系统或者是多个组件组成的复杂异构系统;
所述系统升降级配置文件A可以是简单系统的单个系统配置文件,或者是异构系统的多个系统组件配置文件。
所述升级组件是一个通用的独立于异构系统的单独组件程序,为用java编写的一个可执行jar包文件程序;升级组件的自身配置文件B指定有系统升降级配置文件A所在目录;
所述系统配置文件C是指系统自身的原始配置文件,可以是简单系统的单个配置文件,也可以是异构系统的多组件对应的多个配置文件。
所述配置文件C的修改包括:
(1)新增配置项和注释配置项;
(2)删除配置项和注释配置项;
(3)修改配置项和注释配置项;
所述的配置项和注释配置项包括指定配置区域和未指定配置区域。
本发明方案的有益效果如下:
1、本发明提供一种系统配置文件的升降级方法,具有通用性,可以是单个组件的简单系统;也可以是异构多组件的复杂大型系统都能够使用本发明方法进行配置文件的升降级。
2、本发明方法实现简单,并且可以有效的降低软件系统(尤其是大型异构系统)版本升级过程中的难度和复杂度。
附图说明
下面结合附图对本发明进一步说明:
图1为本发明方法的流程图。
具体实施方式
本发明解决的技术在于提出了一种系统配置文件的升降级方法,实现了对系统版本升级过程中系统配置文件版本的有效管理,简化升降级版本的复杂度和难度。
请参见图1为本发明实施例所提供的一种系统配置文件的升降级方法的流程图。下面分别对其各个流程具体实现进行描述。
设置系统升降级配置文件A,以国云G-Cloud云操作系统计算组件为例,设置升级配置文件两个版本,设置降级配置文件两个版本,如下:
0001_up_gcloud_compute#test.cfg
0001_down_gcloud_compute#test.cfg
0002_up_gcloud_compute#test.cfg
0001_down_gcloud_compute#test.cfg
其中0001_up_gcloud_compute#test.cfg内容如下:
CFG_PATH=/etc/gcloud-compute-controller.cfg
A_test=123
[auth]
A#_test_auth=rabbitMq
A_test_user=123
E_REGION_ID=R-00000002
[DEFAULT]
D_test_default=123
以上配置文件设置中,版本0001的升级后,将在配置文件/etc/gcloud-compute-controller.cfg中无区域配置项中新增(A表示)配置项test=123,在auth区域配置项中新增注释(A#表示)配置项#test_auth=rabbitMq,新增(A表示)配置项test_user=123,修改(E表示)配置项REGION_ID的值为R-00000002,在默认区域配置项[DEFAULT]中删除(A表示)配置项test_default=123。
相应的,对应的0001降级版本配置文件设置需要还原升级版本0001的配置文件修改,即:新增A转成删除D,新增注释A#转成删除注释D#,删除D转成新增A,删除注释D#转成新增注释A#,修改E和修改注释E#不变、但需要修改相应的配置项的值项。具体的如下:
其中0001_down_gcloud_compute#test.cfg内容如下:
CFG_PATH=/etc/gcloud-compute-controller.cfg
D_test=123
[auth]
D#_test_auth=rabbitMq
D_test_user=123
E_REGION_ID=R-00000001
[DEFAULT]
A_test_default=123
升级组件自身配置文件B,主要用于指定系统升降级配置文件所在位置,在升级组件执行过程中,读取相应的升降级配置文件内容。举例如下:
如上,升级组件自身配置文件B指定系统升降级配置文件所在的存放位置在目录/etc/cfg_changes/子目录下面。
升级组件根据系统升降级配置文件A内容定义系统配置文件C,大体逻辑如下:
#java-jar gcloudChangeVersion.jar 0001/etc/cfg_changes/
如上:
(1)0001为指定版本号,不传时更新到最新版本
(2)/etc/cfg_changes/为系统升降级配置文件所在目录位置
(3)gcloudChangeVersion.jar执行流程:
Main(String version,String cfg_path){
获取cfg_path下配置文件
List<File>files=getFile(cfg_path);
获取第一个升降级配置文件,获取CFG_PATH值,根据CFG_PATH获取当前配置文件版本号。(当获取不到CFG_PATH文件时,标记当前版本为0000000,同时在指定路径新建配置文件)
String currentVersion=Files.get(0).getVersion();
比较现在配置文件版本和请求变更版本
String action=null;
If(version==currentVersion){
没有变化
Return;
}else if(version>currentVersion){
升级
action=up;
}else{
降级
action=down;
}
List<File>execFiles=null;
If(action==up){
根据版本号筛选升级配置文件并排序
execFiles=getUpFile(cfg_path,version);
}else{
根据版本号筛选降级配置文件并排序
execFiles=getDownFile(cfg_path,version);
}
For(execFiles){
String type=execFiles.gettype();
VersionChange change=Version.getInstance(type);
Change.exec(execFiles.getPath);
}
}
Cfgchange.java
Exec(String cfg_path){
根据2中配置文件设置规则,增加删除修改配置项
(配置修改的过程日志详细记录,如添加哪一项,什么值;修改哪一项,原来什么值,改成什么值;删除哪一项,什么值)
更新配置文件版本号
}
以上描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出实质性创造所获得的方案,都属于本发明保护的范围。

Claims (3)

1.一种系统配置文件的升降级方法,所述的方法包括如下步骤:
(1)设置系统升降级配置文件A;
(2)升级组件读取自身配置文件B;
(3)升级组件根据系统升降级配置文件A内容定义系统配置文件C;
所述设置系统升降级配置文件A包括:
(11)系统升降级配置文件文件名设置,包括如下设置:
数字版本号_升降级标识_异构系统组件标识#异构系统组件配置文件标识;
(12)系统升降级配置文件文件内容设置,包括如下设置:
所述升级组件根据系统升降级配置文件A内容定义系统配置文件C进一步包括:
(31)如指定版本进行配置文件升级,则组件程序依次读取从最小版本到指定版本的所有版本对应升降级配置文件A,读取内容进行系统配置文件C的修改;
(32)如未指定版本进行配置文件升级,则组件程序依次读取从最小版本到最新版本的所有版本对应升降级配置文件A,读取内容进行系统配置文件C的修改。
2.根据权利要求1所述的方法,其特征在于,所述系统可以是单个组件的简单系统或者是多个组件组成的复杂异构系统;
所述系统升降级配置文件A可以是简单系统的单个系统配置文件,或者是异构系统的多个系统组件配置文件。
所述升级组件是一个通用的独立于异构系统的单独组件程序,为用java编写的一个可执行jar包文件程序;升级组件的自身配置文件B指定有系统升降级配置文件A所在目录;
所述系统配置文件C是指系统自身的原始配置文件,可以是简单系统的单个配置文件,也可以是异构系统的多组件对应的多个配置文件。
3.根据权利要求1或2所述的方法,其特征在于,所述配置文件C的修改包括:
(1)新增配置项和注释配置项;
(2)删除配置项和注释配置项;
(3)修改配置项和注释配置项;
所述的配置项和注释配置项包括指定配置区域和未指定配置区域。
CN201710987484.7A 2017-10-20 2017-10-20 一种系统配置文件的升降级方法 Withdrawn CN107678766A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710987484.7A CN107678766A (zh) 2017-10-20 2017-10-20 一种系统配置文件的升降级方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710987484.7A CN107678766A (zh) 2017-10-20 2017-10-20 一种系统配置文件的升降级方法

Publications (1)

Publication Number Publication Date
CN107678766A true CN107678766A (zh) 2018-02-09

Family

ID=61141209

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710987484.7A Withdrawn CN107678766A (zh) 2017-10-20 2017-10-20 一种系统配置文件的升降级方法

Country Status (1)

Country Link
CN (1) CN107678766A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062635A (zh) * 2018-07-11 2018-12-21 郑州云海信息技术有限公司 一种识别操作系统版本的方法及系统
CN115658119A (zh) * 2022-12-26 2023-01-31 北京沃德博创信息科技有限公司 一种根据软件版本迁移配置数据的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866252A (zh) * 2006-02-20 2006-11-22 华为技术有限公司 不同版本的配置数据间进行转换的方法和系统
US8752015B2 (en) * 2011-12-05 2014-06-10 Ca, Inc. Metadata merging in agent configuration files
CN104217029A (zh) * 2014-09-26 2014-12-17 北京国双科技有限公司 一种配置文件的修改方法及装置
CN105224344A (zh) * 2014-05-28 2016-01-06 济南政和科技有限公司 一种基于xml实现的软件升级文件配置方法
CN106201591A (zh) * 2016-06-29 2016-12-07 浪潮(北京)电子信息产业有限公司 一种云管理平台的配置文件升级方法及装置
CN106886421A (zh) * 2017-04-07 2017-06-23 广东浪潮大数据研究有限公司 一种基于Python的配置文件统一替换的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1866252A (zh) * 2006-02-20 2006-11-22 华为技术有限公司 不同版本的配置数据间进行转换的方法和系统
US8752015B2 (en) * 2011-12-05 2014-06-10 Ca, Inc. Metadata merging in agent configuration files
CN105224344A (zh) * 2014-05-28 2016-01-06 济南政和科技有限公司 一种基于xml实现的软件升级文件配置方法
CN104217029A (zh) * 2014-09-26 2014-12-17 北京国双科技有限公司 一种配置文件的修改方法及装置
CN106201591A (zh) * 2016-06-29 2016-12-07 浪潮(北京)电子信息产业有限公司 一种云管理平台的配置文件升级方法及装置
CN106886421A (zh) * 2017-04-07 2017-06-23 广东浪潮大数据研究有限公司 一种基于Python的配置文件统一替换的方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109062635A (zh) * 2018-07-11 2018-12-21 郑州云海信息技术有限公司 一种识别操作系统版本的方法及系统
CN115658119A (zh) * 2022-12-26 2023-01-31 北京沃德博创信息科技有限公司 一种根据软件版本迁移配置数据的方法

Similar Documents

Publication Publication Date Title
US11095714B2 (en) Orchestration of data services in multiple cloud infrastructures
WO2021025769A1 (en) Dynamic image composition for container deployment
US20170041390A1 (en) N-way synchronization of desktop images
CN109144533B (zh) 一种应用程序的更新及加载的方法、系统及计算机装置
US8856790B1 (en) Systems and methods for data management in a virtual computing environment
US20120079502A1 (en) Dependency-ordered resource synchronization
US9165001B1 (en) Multi stream deduplicated backup of collaboration server data
CN1838128A (zh) 存储装置系统的控制技术
CN105049514B (zh) 一种文件下载方法和装置
CN107678766A (zh) 一种系统配置文件的升降级方法
CN103176809B (zh) 应用升级方法及系统
CN102231163B (zh) 将指定文件优先同步更新的系统及方法
CN103856559A (zh) 多版本并存的web服务工作方法和系统
CN109871221B (zh) 一种针对移动终端设备快速装机部署移动应用软件的系统
CN105656970A (zh) 一种raid卡配置方法、系统及相关装置
CN106446151A (zh) 一种基于国产cpu和数据库的数据迁移及增量更新方法
CN105068873A (zh) 一种异构虚拟资源任务调度方法及系统
CN105630898A (zh) 一种适用于应用程序数据库表数据版本切换的方法
CN101169726A (zh) 基于MTD分区的嵌入式Linux系统在线升级方法
CN103019819A (zh) 一种基于插件机制的动态库统一调度方法
US9792130B2 (en) Rebooting to a UEFI application from a UEFI supported system
CN102123372B (zh) 一种动态加载信息终端子频道内容的方法及系统
CN102916993B (zh) 一种网络硬盘数据更新方法以及装置
CN102609301A (zh) 给多个客户端快速部署软件的方法
CN103220336B (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
WW01 Invention patent application withdrawn after publication

Application publication date: 20180209

WW01 Invention patent application withdrawn after publication