繁体   English   中英

.net(winforms,而不是asp)多服务器部署

[英].net (winforms, not asp) multi-server deployment

我有一个小的.NET WinForms应用程序,几个Linux服务器,DEV和CL1,CL2..CLN(DEV是开发服务器和CL *是服务器,它们与我们的客户相关,它们在私有网络中,它是一种生产服务器)

我想要一个更新机制
(1)我开发了一个新版本并将其发布到DEV
(2)DEV-server的用户从DEV安装最新版本
(3)CL2的用户(client2的员工)直接从CL-2安装稳定版本
(4)应用程序使用安装的服务器检查更新(因此,如果从CL-2安装,则应检查CL-2的更新)
(5)我应该能够将更新传播到选定的CL服务器(仅使用文件副本并且可能是sed;而不是重新发布),如果我想要(如果我不这样做,那么CL服务器将有一个旧的)版本,直到我手动更新它)

我尝试使用clickonce,但看起来它只满足前两个要求。

我该怎么办?

说实话,ClickOnce应该处理1-4。 所有需要的是,对于您要部署/更新的每个站点,您需要拥有自己的发布,在查看您的规范之后,这不是不正确的。

然后,您可以执行以下操作来创建自动化流程以重新发布文件。 这可以执行发布,然后上传到正确的服务器。

请记住,ClickOnce每个版本需要一个新的清单,而新版本需要发布,因此我不确定您是否会通过简单的文件替换来解决问题。

凯尔是对的。 但是对于第5个注释,您只需要复制部署,然后使用mage修改安装URL并将其指向新服务器,然后重新签名清单。

我支持我们部署到DEV,QA,PROD服务器的应用程序。 我处理这个的方式是我创建了一个cmd文件,它有对MSBUILD的命令行调用。 它使用适当的URL和开关为每个服务器构建一次应用程序。 我给我的DEV和QA构建了一个不同的AssemblyName,这样我可以并排运行所有3个环境。 这样我的构建过程就是自动化的,我根本不需要发布。

这是一篇描述您可以使用的参数的文章。 http://msdn2.microsoft.com/en-us/library/ms165431(VS.80).aspx

@Kyle,对于上述解决方案,不同的版本可以并排运行,或者您是否收到错误,表明已经安装了应用程序。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM