gpt4 book ai didi

visual-studio-2010 - 每晚进行ASP.NET MVC 3网站部署的最简单方法是什么?

转载 作者:行者123 更新时间:2023-12-04 13:43:03 25 4
gpt4 key购买 nike

我有一个C#的ASP.NET MVC 3网站,

  • ASP.NET MVC 3 Internet项目
  • 域项目(类库)
  • 单元测试项目
  • SQL Server 2008 R2数据库
  • Merctial 上的
  • 源代码控制

    最简单的方法是每天晚上12:00 AM自动进行站点构建和部署,以便每天都能访问dev.mycompany.com并看到我的Dev版本的实时更新版本?

    我当时在考虑使用 Jenkins (Jenkins)完成所有建筑物。

  • 最佳答案

    我在 Jenkins (Jenkins)帮助维护这样一个系统。显然,具体细节将根据您的项目结构而有所不同,但这大致就是我们Jenkins的工作:

  • 拉码(我们使用Git,但Jenkins也有一个Mercurial插件)
  • 从幂等脚本(我们使用的Ant脚本早于Hudson/Jenkins的使用)对测试数据库执行任何SQL模式更改。
  • 运行msbuild(另一个Jenkins插件)
  • 构建文件是我们的.sln(或者您可以使用网络.csproj-参数略有不同)
  • 命令行参数:
  • /p:Configuration = Dev/p:Platform =“Any CPU”/p:DeployOnBuild = true/p:DeployTarget = Package/p:DeployIisAppPath="dev.mycompany.com/“/v:m
  • 这将生成一个.zip文件,一个.cmd文件和一些.xml文件,其中包含将更新部署到网站上所需的一切
  • 启动另外两个“msdeploy” Jenkins作业,每个.NET Web服务器上一个
  • 每个.NET Web服务器也是Jenkins的从属
  • 我们正在测试两台服务器,通过NLB进行平衡
  • 每个“msdeploy”作业都将.zip/.cmd/.xml文件从构建服务器复制到Web服务器上的临时位置,然后运行.cmd文件
  • .cmd文件执行msdeploy,它将所需的所有内容推送到开发Web服务器

  • 我们有一个单独的工作来运行我们的NUnit测试,但是您也可以轻松地将测试合并到您的主要工作中。我们构建整个.sln而不是Web .csproj的原因之一是,我们可以从相同的构建代码运行单元测试。

    如果尚未安装,则需要在构建服务器上安装ASP.NET MVC3,.NET 4和msdeploy,我相信您在Web服务器上也需要大多数相同的文件。

    对于调度,您可以选择“定期构建”或“轮询SCM”作为构建触发器,然后使用类似于cron的语法(0 0 * * *)在每天午夜运行。

    关于visual-studio-2010 - 每晚进行ASP.NET MVC 3网站部署的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8404195/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com