自动化升级工具之客户端升级工具之windows服务升级操作

服务类升级的原理与操作顺序是,先选择好要升级的服务文件后,在升级器编译好服务文件,成功后,点击【一键升级】(程序会先压缩服务程序包,上传到指定ftp后,启动服务端wcf任务,先下载ftp上的升级包后,停止待升级Windows服务,并进行压缩备份成功后,删除待升级服务所在文件夹下的所有文件【这里有待优化】后,直接将升级包的文件解压到服务所在文件夹,完成此动作后,重新开启,Windows服务),成功一键升级后,就可以根据自己的配置自动测试,我这里是测试的wcf实现restful的相关接口测试,如果升级不成功,可以直接点击【一键回滚】,服务端Wcf可以直接用刚备份好的程序覆盖到服务所在文件夹,下面就列出每一个动作的截图

A、配置UpdateServiceConfig.xml,内容如下:

<serviceconfig key="YBFWebApiServiceController" value="WebAPi微服务" target="test-lan"

                 publishpath="F:\\win8file\Y-BaseFramework.YBF\\YBaseFramework.YBF.Publish\\YBF.WebApiServiceController"

                 uploadlocalpath="F:\\win8file\\Y-BaseFramework.YBF\\YBaseFramework.YBF.Web\\YBaseFramework.YBF.AutoDeployManageTool\\bin\\Debug\\UpdatePack\\{0}.zip"

                 stopservices="stop"

                 bakservices="F:\\win8file\\Y-BaseFramework.YBF\\YBaseFramework.YBF.ServicesRun\\YBF.WebApiServiceController"

                 startservices="start"

                 wcfserviceurl="http://127.0.0.1/Local/LocalService.svc">   

    <command name="Build">

      <![CDATA[  

          %SYSTEMROOT%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe F:\win8file\Y-BaseFramework.YBF\YBaseFramework.YBF.ApiServices\YBaseFramework.YBF.ApiServices.sln /t:Rebuild /p:Configuration=Debug /l:FileLogger,Microsoft.Build.Engine;logfile=logs/Build.log

      ]]>

    </command>  

  </serviceconfig>

<!--publishpath 发布服务程序路径-->

<!--uploadlocalpath 上传更新包-->

<!--stopservices 停止服务-->

<!--bakservices 备份服务-->

<!--startservices 开启服务-->

<!--wcfserviceurl 自动化服务器端访问地址-->

<!--value 名称-->

<!--target test-lan online-wan -->

以上内容请根据自己的实际情况进行配置,如有问题可以联系我。

B、编译服务项目,如图

 

图1 

表示编译成功,可以进行下一步,工具目前并没有判断上一步的状态。

C、一键升级 指定配置节点的服务,如图:

 

图2

 

图3

 

 4

以上三张图,说明服务已经成功升级,可以根据自动化测试的配置进行下一步操作了。

D、自动测试,先要在UpdateServiceConfig.xml文件中配置,内容如下:

<!--测试服务配置部分-->

  <testserviceconfig key="YBFWebApiServiceController">

    <testitem name="LoginCheck0" paramtype="form" type="post" url="http://localhost:3721/hw/demo/HelloWorld/LoginCheck.html" item="status" result="0" remark="自动化测试登录接口">

      <command name="param">

        <![CDATA[  

          USERNAME=yaosy&PASSWORD=123456&vastr=81aef5c9ac742ca56a121390ea5264ec

      ]]>

      </command>

    </testitem>

    <testitem name="LoginCheck2" paramtype="form" type="post" url="http://localhost:3721/hw/demo/HelloWorld/LoginCheck.html" item="status" result="2" remark="自动化测试登录接口">

      <command name="param">

        <![CDATA[  

          USERNAME=yaosy&PASSWORD=&vastr=81aef5c9ac742ca56a121390ea5264ec

      ]]>

      </command>

    </testitem>

  </testserviceconfig>

Key 对应服务节点 Name 为名称 paramtype 为类型 form/json type为提交方式 get/post url为接口地址 item为比较结果名称 result 为比较结果 command中的内容为参数部分

 

成功配置以上节点内容后,可以点击【自动测试】,如图:

 

5

以上是相关的接口,不一样的比较结果,得到两个状态。 

E、在升级和自动测试不通过后,我们可以进行【一键回滚】,如图:

 

6

 

7

到此,服务类的升级已基本完成,站点站点的升级原理和服务升级一样,只是停用的是站点的应用程序池(因为IIS的版本很多,单独操作指定站点目前没有什么好的办法,如果有人知道更多好的办法,也可以联系我,感谢!)

相关工具下载:

字符串加密工具:下载

服务器端Wcf服务:下载

客户端升级工具:下载

posted on 2016-11-22 12:13  姚远的小菜园  阅读(1117)  评论(0编辑  收藏  举报

导航