【发布时间】:2015-04-15 00:02:26
【问题描述】:
我想弄清楚如何将 TeamCity 构建与 Springloops 部署集成。
假设我有一个名为 api 的 Git 存储库,它有两个分支 dev 和 dev.build
api
|-- dev
|-- dev.build
我已经在dev 上设置了带有 VCS 触发器的 TeamCity,以便在提交时构建。然后创建我想用来部署的工件。 (在这种情况下,它是一个 ASP.NET 网站,其中包含我想用于部署的各种 DLL)。
我现在也有 Springloops 用于部署。理想情况下,我想从dev.build 进行部署。有没有办法将构建工件从 TeamCity 提交到 dev.build 分支,然后从该分支进行部署?
基本的工作流程是
- 提交代码到
dev - TeamCity 将
dev合并到dev.build - TeamCity 从
dev.build构建 - TeamCity 将工件 (DLL) 提交到
dev.build - Springloops 从
dev.build自动部署
我有read arguments against storing build binaries/artifacts in git,但现在我从 Springloops 进行部署,理想情况下我可以保留该设置。我知道你可以call git as a command line build step,但我无法将所有部分放在一起。特别是如何从 dev 合并到 dev.build 作为 TeamCity 构建步骤,然后使用 dev.build 进行构建。
这可能吗?我在想这完全错了吗?我还有其他选择吗?
编辑/更新
我发现切换到使用 WebDeploy 来部署 TeamCity 工件(WebDeploy 包)而不是通过 Springloops 从 git 存储库提交构建工件会更聪明。我希望停止使用 Springloops 进行部署,并通过 TeamCity 构建任务通过 WebDeploy 直接部署到我的 IIS 站点。这样构建工件(\bin 文件夹)将远离 git,并且还可以使用 web.config 转换,而不是在生产 IIS 站点上手动进行 web.config 编辑。
【问题讨论】:
标签: asp.net git deployment teamcity springloops