开发手册 欢迎您!
软件开发者资料库

持续集成 - 部署

持续集成部署 - 从概述,软件,降低风险,版本控制,功能,要求,构建解决方案,构建脚本,构建服务器,检入源代码,在TeamCity中创建项目,定义任务,学习持续集成,构建失败通知,文档和反馈,测试,检查,数据库集成,部署,最佳实践。

自动构建和可重复构建.自动化测试和可重复测试.测试类别和测试频率.持续检查.持续数据库集成.创建有效的CI环境中的这些任务主要是一个关键的好处:在任何环境中的任何时间点发布工作软件.

在前面的章节中,我们完成了所有的工作.以下分段 :

  • 创建我们的代码.

  • 确保在TeamCity中正确构建.

  • 创建了数据库集成流程.

  • 进行了成功的测试.

现在唯一剩下的就是进行自动部署,以便我们的整个过程完成.

对于我们案例中的自动部署,我们需要遵循以下步骤 :

  • 在我们的部署服务器中,确保已安装IIS.

  • 确保IIS用户可以访问我们的数据库.

  • 创建一个发布配置文件,用于在构建网站时发布该网站.

  • 确保我们改变我们的MSBuild命令进行自动部署.

  • 自动化TeamCity进行自动发布.

  • 执行 git commit 以确保所有文件都在Git中.

步骤1 : 配置本地IIS服务器.如果您有本地或远程IIS服务器,则可以执行以下配置来部署我们的应用程序.在以自动方式完成部署之前,查看是否可以手动完成部署始终是一种很好的做法.

步骤2 : 在Windows 2012服务器上,转到您的服务器管理器,然后单击添加角色和功能.

服务器管理器

第3步 : 在出现的以下屏幕上单击"下一步".

添加角色和功能向导

第4步 : 在下一个屏幕上选择基于角色或基于功能的安装,然后单击下一步.

安装类型

第5步 : 选择默认服务器并单击Next.

Default Server

第6步 : 选择Web服务器角色,然后单击"下一步".

Web服务器角色

第7步 : 在出现的下一个屏幕中,单击"下一步".

单击下一步

第8步 : 在出现的以下屏幕上再次单击"下一步".

Web服务器角色单击下一步

第9步 : 在弹出的下一个屏幕中,单击Next.

Role Services

第10步 : 在最终屏幕中,您可以单击"安装"按钮来安装IIS.

安装IIS

安装IIS后,可以打开Internet信息服务打开它.

互联网信息服务

步骤11 : 单击"应用程序池",您将看到名为 DefaultAppPool 的池.这需要在下一步中访问SQL Server.

步骤12 : 如果我们需要将ASP.Net应用程序连接到MS SQL Server应用程序,我们必须允许访问SQL Server实例的默认应用程序池,以便它可以连接到我们的 Demodb 数据库.

步骤13 : 打开SQL Server Management Studio.转到登录,右键单击并选择菜单选项新登录.

新登录

在下一个屏幕中,更新以下参数并单击"确定".

  • 登录名作为IIS APPPOOL \DefaultAppPool.

  • 默认数据库 - 这应该是我们的数据库,它是demodb.

参数

步骤14 : 创建发布个人资料.发布配置文件在Visual Studio中用于创建部署包,然后可以与MS Build一起使用,也可以在任何CI服务器中使用.要执行此操作,请从Visual Studio中右键单击项目,然后单击"发布"菜单选项

Publish个人资料

第15步 : 在出现的下一个屏幕中,选择创建新的发布配置文件,为其命名 -   DemoDeployment .然后单击"下一步"按钮.

演示部署

在随后的屏幕中显示,添加以下值和减号;

  • 选择"发布"方法作为"Web部署".

  • 将服务器输入localhost.

  • 输入站点名称作为默认网站/演示.

  • 将目标网址设为 http ://localhost/Demo

然后单击"下一步"按钮.

发布Web下一步按钮

步骤16 : 在下一个屏幕中,单击"下一步".

发布Web配置

第17步 : 在出现的最终屏幕中,单击"发布"按钮.

最终屏幕

现在,如果您转到项目的 C:\Demo \Simple\Properties \PublishProfiles 位置,您将看到一个新的发布配置文件xml文件创建.此发布配置文件将包含将应用程序发布到本地IIS服务器所需的所有详细信息.

步骤18 : 现在让我们自定义MSBuild命令并使用上面的发布配置文件,看看会发生什么.在我们的MSBuild命令中,我们指定以下参数 :

  • Build on Build为true  - 这将触发自动部署成功构建完成后.

  • 然后我们提到要使用上述步骤中使用的发布配置文件.

  • Visual Studio版本只是在MSBuild部署功能中提到正在使用的Visual Studio的版本.

Visual Studio Version

当您运行上述命令时,MSBuild将触发一个构建和部署过程.您将注意到,它将它部署到我们的IIS服务器中的默认网站.

默认<a href=网站"/>

现在,如果我们浏览网站 -   http://localhost/Demo/Demo.aspx ,我们将看到以下输出,意味着MSBuild成功部署到我们的网站.

Localhost

第19步 : 通过TeamCity实现自动化 - 现在是时候根据上述步骤向TeamCity服务器添加任务以自动使用MSBuild部署我们的应用程序.

步骤20 : 转到项目仪表板,然后单击编辑配置设置.

项目仪表板配置设置

第21步 : 转到构建步骤,然后单击添加构建步骤.

构建步骤添加构建步骤

选择以下选项 :

  • 跑步者类型应为MSBuild

  • 提供可选的步骤名称

  • 输入构建路径为Simple/Simple.csproj

  • 将MSBuild版本保持为Microsoft Build Tools 2013

  • 将MSBuild Toolsversion保持为12.0

  • 将命令行设置为/p:DeployOnBuild = true/p:PublishProfile = DemoDeployement/p:VisualStudioVersion = 12.0

第22步 : 单击保存.

构建配置设置单击保存


MS Build Version

确保在构建步骤中,部署步骤是链中的最后一步.

Deploy Step

步骤23 : 现在让我们做最后的 git commit ,以确保所有文件都在Git中并且可以由TeamCity使用.

Final Git Command

恭喜,您已成功为您的应用程序设置了一个完整的持续集成周期,可以在任何时间点运行.