我正在使用TopShelf编写WinService应用程序,我想知道使用TeamCity部署它的标准方法是什么。
这是我想到的场景:
- 代理生成项目
- 代理将包含生成结果(例如Release)的文件夹复制到目标计算机
- 如果文件夹"ServiceName"存在,Agent会转到那里并运行ServiceName.exe卸载并删除该文件夹
- Agent将Release文件夹重命名为ServiceName
- 代理转到ServiceName文件夹并调用ServiceName.exe install and start
基本上,这就是它可能的工作方式。然而,我不确定这是否是最方便的。有其他选择吗?AFAIK,章鱼部署可能会派上用场,但我不确定。我发现了一些关于普通WinService的好看的文章和答案,但关于TopShelf的不多。
TeamCity是为构建而非部署而设计的。我建议查看一个为部署而设计的工具,如Octopus Deploy或FAKE。Deploy