zoukankan      html  css  js  c++  java
  • [2015-11-10]分享一个调用msbuild生成解决方案并打包发布的批处理脚本


    最近工作成果之一,特此记录。

    用于打包的批处理脚本

    注意设置 path/to/your/solutionfile.sln 指向vs的解决方案文件。

    setlocal enabledelayedexpansion
    set "filepath=%cd%"
    cd /d  c:
    if not exist localzips ( mkdir localzips )
    cd localzips
    set RootPath=%1
    if "%RootPath%"=="" (
    set h=%Time:~0,2%
    set h=!h: =0!
    set RootPath=%date:~0,4%%date:~5,2%%date:~8,2%!h!%Time:~3,2%
    )
    mkdir %RootPath% 
    cd %RootPath%
    copy %filepath%DeployTestGroup01.bat DeployTestGroup01.bat
    copy %filepath%DeployGroup01.bat DeployGroup01.bat
    touch create_by_click_to_zip_deploy_bat.txt
     msbuild /p:DeployOnBuild=True /p:VisualStudioVersion=12.0 /p:PublishProfile=PRD /P:Configuration=PRD  /p:DeployPackageLocation="c:localzips\%RootPath%"  path/to/your/solutionfile.sln
    pause
    start .
    

    项目的发布配置文件PRD.pubxml

    注意设置DeployIisAppPath节,和IIS中的站点名称一致。

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <WebPublishMethod>Package</WebPublishMethod>
        <LastUsedBuildConfiguration>PRD</LastUsedBuildConfiguration>
        <LastUsedPlatform>Any CPU</LastUsedPlatform>
        <SiteUrlToLaunchAfterPublish />
        <LaunchSiteAfterPublish>True</LaunchSiteAfterPublish>
        <ExcludeApp_Data>False</ExcludeApp_Data>
        <DesktopBuildPackageLocation>$(DeployPackageLocation)$(AssemblyName)$(AssemblyName).zip</DesktopBuildPackageLocation>
        <PackageAsSingleFile>true</PackageAsSingleFile>
        <DeployIisAppPath>Site Name In IIS</DeployIisAppPath>
      </PropertyGroup>
    </Project>
    

    调用发布包自带脚本的批处理脚本DeployTestGroup01.bat和DeployGroup01.bat

    DeployTestGroup01.bat,使用/T 选项,并非真正执行发布,只是测试预览。
    注意设置各项参数。

    call path_to_the_cmd_file /T /M:MachineNameOrIp /U:UserName /P:Password
    pause
    

    DeployGroup01.bat,使用/Y 选项,实际执行发布。

    call path_to_the_cmd_file /Y /M:MachineNameOrIp /U:UserName /P:Password
    pause
    

    cmd_file的使用说明,可以在 xxxx.deploy-readme.txt 文件中查看。UserName和Password可以用有权限的域账号,也可以设置IIS管理器用户,参考webdeploy的设置。

  • 相关阅读:
    什么是静态测试、动态测试、黑盒测试、白盒测试、α测试 β测试
    软件产品质量特性
    目前主要的测试用例设计方法是什么?
    软件的安全性应从哪几个方面去测试?
    软件配置管理的作用?软件配置包括什么?
    HDOJ1003(DP)
    HDOJ5650
    POJ1068(模拟)
    POJ2586(贪心)
    HDOJ1548(BFS)
  • 原文地址:https://www.cnblogs.com/personball/p/7455890.html
Copyright © 2011-2022 走看看