CN110795105A - 一种配电自动化主站***自动编译部署方法与*** - Google Patents

一种配电自动化主站***自动编译部署方法与*** Download PDF

Info

Publication number
CN110795105A
CN110795105A CN201911039997.0A CN201911039997A CN110795105A CN 110795105 A CN110795105 A CN 110795105A CN 201911039997 A CN201911039997 A CN 201911039997A CN 110795105 A CN110795105 A CN 110795105A
Authority
CN
China
Prior art keywords
compiling
server
distribution automation
power distribution
master station
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
CN201911039997.0A
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.)
State Grid Corp of China SGCC
Xuji Group Co Ltd
XJ Electric Co Ltd
Electric Power Research Institute of State Grid Henan Electric Power Co Ltd
Xuchang XJ Software Technology Co Ltd
Original Assignee
Xuji Group Co Ltd
XJ Electric Co Ltd
Electric Power Research Institute of State Grid Henan Electric Power Co Ltd
Xuchang XJ Software 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 Xuji Group Co Ltd, XJ Electric Co Ltd, Electric Power Research Institute of State Grid Henan Electric Power Co Ltd, Xuchang XJ Software Technology Co Ltd filed Critical Xuji Group Co Ltd
Priority to CN201911039997.0A priority Critical patent/CN110795105A/zh
Publication of CN110795105A publication Critical patent/CN110795105A/zh
Pending legal-status Critical Current

Links

Images

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/60Software deployment

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明涉及一种配电自动化主站***自动编译部署方法与***,属于配电自动化领域。本发明首先将开发人员上传的代码统一存储于档案库中,当到达预设编译周期或者发现档案库中的代码变化后,再由编译服务器进行代码的编译,若编译失败则发出告警信号,当编译成功则打包编译生成的文件,并在后续利用部署源服务器,确定需进行部署的目标服务器的地址后,由部署源服务器对目标服务器进行部署。本发明该方法实现了编译与部署的自动实现,无需借助人为操作,显著提高了配电自动化***的开发、代码维护与***部署效率。

Description

一种配电自动化主站***自动编译部署方法与***
技术领域
本发明涉及一种配电自动化主站***自动编译部署方法与***,属于配电自动化领域。
背景技术
随着社会经济的发展,企业和居民用户的用电量与日俱增,传统的配电监控和调度***已不能满足实时性、经济性、可靠性的要求,配电自动化***(DistributionAutomation System,DAS)应运而生。配电自动化***能够在远方监视、协调和操作配电设备,支持需求侧管理和地理信息接入,极大地提高了电网运行的经济型和稳定性。
但由于配电自动化***的结构复杂,功能模块众多,因此***的开发团队成员也较多,一方面代码的修改频率很高,而每次修改都可能为代码引入新的错误,若在每次代码修改过程中都进行人工自检,则会大大降低开发人员的工作效率,且由开发人员自身对其编写的代码进行检查也往往难以发现其中的错误;另一方面由于功能模块的众多以及开发人员的众多,导致实现配电自动化***软件集成的难度增大。最终,导致现有的配电自动化***开发维护以及后续的***部署的效率均较低。
发明内容
本发明的目的是提供一种配电自动化主站***自动编译部署方法与***,以解决目前配电自动化***的开发、代码维护以及***部署效率低的问题。
为实现上述目的,本发明提供了一种配电自动化主站***自动编译部署方法,包括以下步骤:
开发人员将代码上传到指定的档案库之后,当到达预设的编译周期,或者档案库中的代码版本更新时,由编译服务器进行代码编译;
当编译出错时,发出编译失败警告;当编译通过时,将编译生成的文件打包,并上传至指定服务器;
将所述指定服务器中最新的文件包下载到部署源服务器上,确定需部署的目标服务器的网络地址,由部署源服务器对目标服务器进行部署。
本发明的有益效果是:
本发明首先将开发人员所开发的代码通过指定的档案库进行统一收录存储,然后设置在达到预设的编译周期或者检测到档案库中的代码版本更新也即其中的代码内容更新时,再由编译服务器进行代码的编译,整个过程不需人工参与,准确且快速。而在编译出错时,也可以根据本次编译至上次编译之间提交的代码,针对性地检查代码中的错误,缩小了检查范围,大大简化了开发人员与维护人员的管理维护任务量。在编译成功后进行部署时,该方法也可在确定了目标服务器地址后自动进行部署,避免了开发人员和维护人员手动部署时需进行大量重复性工作的情况,极大地提高了部署效率。
进一步的,为了实现更高效的管理,所述档案库为SVN档案库。
进一步的,同样为了实现更高效的管理,所述指定服务器为SVN服务器。
进一步的,为了更好地完成编译与部署,还包括对SVN档案库进行配置的步骤,包括:对SVN档案库路径、编译周期、编译后文件包的上传路径、目标服务器的网络地址信息进行配置。
进一步的,为了给出一种更好的配置方法,对SVN档案库进行配置的方法为:在所述编译服务器中安装SVN客户端,通过web页面进行配置。
进一步的,所述网络地址为IP地址。
进一步的,为了更为方便地区别每次打包生成的文件,将编译生成的文件打包时,附上版本号信息和当前时刻的时间信息。
进一步的,以当前时刻的时间对所述编译生成的文件包命名。
进一步的,为了更高效地完成部署而提高效率,部署源服务器采用脚本对目标服务器进行部署。
为实现上述目的,本发明还提供了一种配电自动化主站***自动编译部署***,包括存储模块以及执行模块,存储模块连接执行模块,执行模块用来执行存储于存储模块中的以下自动编译部署方法:
开发人员将代码上传到指定的档案库之后,当到达预设的编译周期,或者档案库中的代码版本更新时,由编译服务器进行代码编译;
当编译出错时,发出编译失败警告;当编译通过时,将编译生成的文件打包,并上传至指定服务器;
将所述指定服务器中最新的文件包下载到部署源服务器上,确定需部署的目标服务器的网络地址,由部署源服务器对目标服务器进行部署。
本发明的有益效果是:
本发明首先将开发人员所开发的代码通过指定的档案库进行统一收录存储,然后设置在达到预设的编译周期或者检测到档案库中的代码版本更新也即其中的代码内容更新时,再由编译服务器进行代码的编译,整个过程不需人工参与,准确且快速。而在编译出错时,也可以根据本次编译至上次编译之间提交的代码,针对性地检查代码中的错误,缩小了检查范围,大大简化了开发人员与维护人员的管理维护任务量。在编译成功后进行部署时,该方法也可在确定了目标服务器地址后自动进行部署,避免了开发人员和维护人员手动部署时需进行大量重复性工作的情况,极大地提高了部署效率。
进一步的,为了实现更高效的管理,所述档案库为SVN档案库。
进一步的,同样为了实现更高效的管理,所述指定服务器为SVN服务器。
进一步的,为了更好地完成编译与部署,还包括对SVN档案库进行配置的步骤,包括:对SVN档案库路径、编译周期、编译后文件包的上传路径、目标服务器的网络地址信息进行配置。
进一步的,为了给出一种更好的配置方法,对SVN档案库进行配置的方法为:在所述编译服务器中安装SVN客户端,通过web页面进行配置。
进一步的,所述网络地址为IP地址。
进一步的,为了更为方便地区别每次打包生成的文件,将编译生成的文件打包时,附上版本号信息和当前时刻的时间信息。
进一步的,以当前时刻的时间对所述编译生成的文件包命名。
进一步的,为了更高效地完成部署而提高效率,部署源服务器采用脚本对目标服务器进行部署。
附图说明
图1是本发明实施例中配电自动化主站***自动编译部署方法的流程图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚,下面结合附图及实施例,对本发明作进一步的详细说明,但本发明的实施方式并不局限于此。
本发明提供的方法实施例:
本方法采用了SVN版本控制***为平台,并且以此为例来说明本实施例的自动编译部署过程。SVN是一种开源的版本控制***,采用分支管理***实现高效管理,可由多人共同开发同一个项目,实现资源共享;该SVN版本控制***可管理随着时间而改变的数据,该数据存放在控制***对应的档案库中,该档案库会记录其中内容的每次变动。
当然,本实施例只是一种优选。作为其他实施方式,自动编译部署方法也可以采用其它种类的版本控制***。
如图1所示是本实施例配电自动化主站***自动编译部署方法的流程图,该方法的具体过程为:
首先,进行各种配置工作,包括:
在SVN服务器上建立配电自动化主站***的代码存放档案库,对该配电自动化主站***进行开发的开发人员需统一将代码上传到该档案库中。
在编译服务器上搭建编译环境并安装SVN客户端,与配置界面相关的Web工程和Tomcat也需同时部署在该编译服务器上,启动Tomcat后,在浏览器中进入配置界面,在该界面配置代码的SVN档案库上传路径,编译周期,编译成功后文件的打包上传路径,管理员的邮箱信息,以及需进行部署的目标服务器的IP地址、用户名和密码等信息。其中的编译周期,本实施例中选择设置为一天,这样既不会因为周期设置过短导致编译过于频繁,使版本繁杂,又不会因周期设置过长,而使两次编译任务之间所提交的代码过多导致无法快速准确定位错误代码的位置。
由于自动部署的本质是把部署脚本拷贝到目标服务器执行,以及向目标服务器拷贝安装文件,所以可配置部署源服务器与目标服务器之间ssh免密。配置ssh免密的步骤如下:
在各服务器上执行命令ssh-keygen-t rsa,会在$HOME/.ssh目录下生成id_rsa和id_rsa.pub两个文件,将所有部署目标服务器的id_rsa.pub拷贝至部署源服务器,并把全部密钥内容追加到文件authorized_keys中,将该文件同步至所有需进行部署的目标服务器上,即完成了ssh免密配置。
若需进行部署的目标服务器较多,则会造成ssh免密配置步骤繁杂,此时可将执行配置的shell命令写入脚本,并采用expect辅助工具进行自动配置。expect辅助工具能够按照用户设定的规则实现服务器之间的自动交互,即在脚本执行过程中自动输入用户名、密码或者其它确认信息,实现ssh免密配置的自动完成,不需进行人工操作而提高效率。该过程中,也可以采用其它辅助工具进行自动配置。
配置完成后,SVN服务器、编译服务器、部署源服务器运行,运行过程中:
在到达预设的编译周期后,或者SVN档案库识别到其中的代码内容发生变化后,自动编译脚本会把SVN档案库中的最新代码下载到编译服务器中进行编译。
当编译出错时,编译服务器会自动向预先配置好的管理员邮箱按照smtp协议发送编译错误告警邮件,管理员在收到告警邮件后,可针对性地从上次编译到本次编译中间上传到SVN档案库的代码中进行代码检查,十分有效地缩小了代码检查的范围,提高了检查效率。
当编译成功时,将编译生成的文件进行压缩生成压缩包,并附上版本号信息,同时以当前时刻来命名压缩包,并将压缩包上传到SVN服务器的指定路径上保存。通过向压缩包中附上版本号信息,以及以当前时刻来对压缩包命名,可有效区分每次生成的编译文件,便于管理。
编译完成后,则需进行后续的部署工作。编译成功并得到编译文件的压缩包后,需将保存在SVN服务器的该压缩包下载到部署源服务器上,然后自动部署脚本会根据预先配置好的目标服务器信息,按照单机或者集群的部署方式,完成文件分发、配置文件修改、文件权限修改,恢复数据库备份等操作,当自动部署脚本执行完毕,即可完成配电自动化主站***的自动部署。
在本实施例中,特别设置了部署源服务器与目标服务器之间的ssh免密,以及利用脚本完成自动编译与部署。在其它实施例中,也可以不进行部署源服务器与目标服务器之间的ssh免密设置,或者利用其他方式来完成自动编译与部署。
本发明提供的***实施例:
本***包括有存储模块以及执行模块,存储模块连接执行模块,执行模块用来执行存储于存储模块中的,设定好的配电自动化主站***自动编译部署方法,而该自动编译部署方法实际上就是上述方法实施例中所述的自动编译部署方法,由于该自动编译部署方法的具体内容已在方法实施例中进行了详细介绍,故在此不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解:依然可以对本发明的具体实施方式进行修改或者等同替换,而未脱离本发明精神和范围的任何修改或者等同替换,其均应涵盖在本发明的权利要求保护范围之内。

Claims (10)

1.一种配电自动化主站***自动编译部署方法,其特征在于,包括以下步骤:
在档案库保存代码后,当到达预设的编译周期,或者档案库中的代码版本更新时,由编译服务器进行代码编译;
当编译出错时,发出编译失败警告;当编译通过时,将编译生成的文件打包,并上传至指定服务器;
将所述指定服务器中最新的文件包下载到部署源服务器上,确定需部署的目标服务器的网络地址,由部署源服务器对目标服务器进行部署。
2.根据权利要求1所述的配电自动化主站***自动编译部署方法,其特征在于,所述档案库为SVN档案库。
3.根据权利要求1或2所述的配电自动化主站***自动编译部署方法,其特征在于,所述指定服务器为SVN服务器。
4.根据权利要求2所述的配电自动化主站***自动编译部署方法,其特征在于,还包括对SVN档案库进行配置的步骤,包括:对SVN档案库路径、编译周期、编译后文件包的上传路径、目标服务器的网络地址信息进行配置。
5.根据权利要求4所述的配电自动化主站***自动编译部署方法,其特征在于,对SVN档案库进行配置的方法为:在所述编译服务器中安装SVN客户端,通过web页面进行配置。
6.根据权利要求4或5所述的配电自动化主站***自动编译部署方法,其特征在于,所述网络地址为IP地址。
7.根据权利要求1或2所述的配电自动化主站***自动编译部署方法,其特征在于,将编译生成的文件打包时,附上版本号信息和当前时刻的时间信息。
8.根据权利要求7所述的配电自动化主站***自动编译部署方法,其特征在于,以当前时刻的时间对所述编译生成的文件包命名。
9.根据权利要求1或2所述的配电自动化主站***自动编译部署方法,其特征在于,部署源服务器采用脚本对目标服务器进行部署。
10.一种配电自动化主站***自动编译部署***,其特征在于,包括存储模块以及执行模块,存储模块连接执行模块,执行模块用来执行存储于存储模块中的权利要求1-9中任意一项所述的配电自动化主站***自动编译部署方法。
CN201911039997.0A 2019-10-29 2019-10-29 一种配电自动化主站***自动编译部署方法与*** Pending CN110795105A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911039997.0A CN110795105A (zh) 2019-10-29 2019-10-29 一种配电自动化主站***自动编译部署方法与***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911039997.0A CN110795105A (zh) 2019-10-29 2019-10-29 一种配电自动化主站***自动编译部署方法与***

Publications (1)

Publication Number Publication Date
CN110795105A true CN110795105A (zh) 2020-02-14

Family

ID=69442041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911039997.0A Pending CN110795105A (zh) 2019-10-29 2019-10-29 一种配电自动化主站***自动编译部署方法与***

Country Status (1)

Country Link
CN (1) CN110795105A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434151A (zh) * 2021-06-10 2021-09-24 中国铁道科学研究院集团有限公司电子计算技术研究所 一种服务部署方法、服务器和***
CN113721917A (zh) * 2021-08-03 2021-11-30 北京科东电力控制***有限责任公司 基于国产芯片的电网调度控制***自动编译方法及装置
TWI805488B (zh) * 2022-08-09 2023-06-11 大陸商鼎捷軟件股份有限公司 自動編譯系統及自動編譯方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035892A (zh) * 2010-12-23 2011-04-27 中科方德软件有限公司 操作***版本自动发布和软件包自动更新的***及方法
CN104793946A (zh) * 2015-04-27 2015-07-22 广州杰赛科技股份有限公司 基于云计算平台的应用部署方法和***
CN107729066A (zh) * 2017-11-08 2018-02-23 重庆扬讯软件技术股份有限公司 一种基于svn资源库自动化构建发布方法与装置
US10162877B1 (en) * 2013-12-17 2018-12-25 VCE IP Holding Company LLC Automated compilation of content

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102035892A (zh) * 2010-12-23 2011-04-27 中科方德软件有限公司 操作***版本自动发布和软件包自动更新的***及方法
US10162877B1 (en) * 2013-12-17 2018-12-25 VCE IP Holding Company LLC Automated compilation of content
CN104793946A (zh) * 2015-04-27 2015-07-22 广州杰赛科技股份有限公司 基于云计算平台的应用部署方法和***
CN107729066A (zh) * 2017-11-08 2018-02-23 重庆扬讯软件技术股份有限公司 一种基于svn资源库自动化构建发布方法与装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
于红雨;李燕;: "Windows平台的软件自动构建与发布技术研究" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434151A (zh) * 2021-06-10 2021-09-24 中国铁道科学研究院集团有限公司电子计算技术研究所 一种服务部署方法、服务器和***
CN113721917A (zh) * 2021-08-03 2021-11-30 北京科东电力控制***有限责任公司 基于国产芯片的电网调度控制***自动编译方法及装置
TWI805488B (zh) * 2022-08-09 2023-06-11 大陸商鼎捷軟件股份有限公司 自動編譯系統及自動編譯方法

Similar Documents

Publication Publication Date Title
CN107577475B (zh) 一种数据中心集群***的软件包管理方法及***
CN107729066B (zh) 一种基于svn资源库自动化构建发布方法与装置
CN110825420B (zh) 分布式集群的配置参数更新方法、装置、设备及存储介质
CN102609281B (zh) 分布式软件补丁更新方法及***
CN110795105A (zh) 一种配电自动化主站***自动编译部署方法与***
CN113434158B (zh) 一种大数据组件的自定义管理方法、装置、设备及介质
CN110990026A (zh) 一种PaaS平台自动部署方法及***
CN104994177A (zh) 网盘***的同步方法、终端设备和网盘***
CN112084008A (zh) 一种基于容器技术快速部署云管***的方法
CN111162953A (zh) 数据处理方法、***升级方法和服务器
CN111651352B (zh) 一种仓库代码的合并方法及装置
CN111831567B (zh) 应用的测试环境配置方法、装置、***和介质
CN116089011A (zh) 创建镜像仓库的方法、装置、存储介质以及电子设备
CN105117329A (zh) 一种应用程序自动上线方法及***
CN113254054B (zh) 一种智能合约一站式开发***及方法
CN117112122A (zh) 一种集群部署方法和装置
CN113824790A (zh) 一种支持企业级应用的云原生PaaS管理平台
CN111813683B (zh) 一种通用的软件测试环境自动同步方法
CN112130889A (zh) 资源的管理方法和装置、存储介质、电子装置
KR20150124653A (ko) 프로세스 검증 기능이 구비된 전력 계통 감시 및 제어 시스템
CN114281367A (zh) 一种面向信创环境的大数据平台部署方法及***
CN109086048A (zh) 一种Android客户端项目下多个模块单独发布AAR的实现方法
CN115080309A (zh) 数据备份***、方法、存储介质以及电子设备
CN110795113B (zh) 一种Redis集群服务的安装方法、服务器和介质
CN115168175A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200902

Address after: No. 1706 Xuchang City, Henan province 461000 XJ Avenue

Applicant after: XUCHANG XUJI SOFTWARE TECHNOLOGY Co.,Ltd.

Applicant after: XJ Group Corp.

Applicant after: XJ ELECTRIC Co.,Ltd.

Applicant after: STATE GRID HENAN ELECTRIC POWER CORPORATION ELECTRIC POWER SCIENCE Research Institute

Applicant after: STATE GRID CORPORATION OF CHINA

Address before: No. 1706 Xuchang City, Henan province 461000 XJ Avenue

Applicant before: XUCHANG XUJI SOFTWARE TECHNOLOGY Co.,Ltd.

Applicant before: XJ Group Corp.

Applicant before: XJ ELECTRIC Co.,Ltd.

Applicant before: STATE GRID HENAN ELECTRIC POWER CORPORATION ELECTRIC POWER SCIENCE Research Institute

WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20200214