【发布时间】:2015-09-01 07:47:41
【问题描述】:
我有一个内置到可执行文件中的项目。某种服务器。以及作为 CI 的 Team City。我将 Team City 配置为自动构建我的源代码。
我想完成以下步骤:
- 当有人提交到 repo 时,源由 Team City 构建。 (完成)
- 已构建的二进制文件被复制到某个位置。 (在运行 Team City 服务器的同一台机器上)
- 我的可执行文件使用一些参数启动。
我设法通过创建单独的构建配置来配置前两个步骤,以便使用 Artifacts 依赖项进行部署。但我不知道如何启动我的可执行文件。如果我使用命令行构建步骤执行此操作,则构建代理会挂起,直到应用程序被终止。而我需要相反 - 由 Build Agent 启动的应用程序应该可以运行很长时间,而 Build Agent 本身会在运行我的 exe 后立即完成。
可以这样做还是我在滥用 CI?
我还需要能够重新部署:
- 杀死以前运行的应用程序(通过进程映像 f.e.)
- 从常规部署开始执行所有步骤。
搜索“持续部署”只会为基于 Web 的部署提供结果,这不是我的情况。
【问题讨论】:
-
您知道 TeamCity 代理进程在哪个用户下运行吗?可能是它没有启动应用程序的权限,正在等待交互授权什么的。
-
启动的应用程序运行良好。问题在于构建代理挂起。只有当我终止启动的应用程序时,构建代理才会完成。
-
您实际用于启动应用程序的命令是什么?
标签: .net continuous-integration teamcity exe continuous-deployment