在我的组织中,我们有200多个Microsoft桌面和Web应用程序。我正在尝试为那些应用程序设置持续集成和持续部署(我已经为Java应用程序做过)。我们已经在企业Github,Jenkins,Nexus,XL- Deploy和XL- Release中使用了以下工具。我们还开发了Groovy的框架,该框架由Jenkins调用,并在Jenkins中分配了所有自动创建的工作,并将生成的工件推入了联系。
我想设置同类解决方案,并希望使用与Microsoft相同的工具集。
我浏览了Nexus文档,找不到任何存储生成的工件(.exe或MSI)的方法。它仅支持Nuget程序包,我不确定它们是什么以及如何使用它们?
我能够在Jenkins execute shell中使用msbuild.exe构建我的项目解决方案文件,并能够以.exe和MSI的形式生成工件。
现在我有几个问题:
-我应该如何以及在何处进行版本控制和存储生成的工件(.exe和MSI),以及如何在目标主机上部署桌面应用程序(众所周知,我们需要双击.exe进行安装)。
-我应该如何继续使用Web .net应用程序?
-什么是nuget软件包,我可以将其用于桌面应用程序部署而不是MSI,是否需要修改代码中的任何内容以实现此目的?
PS:我知道TFS是解决方案,但是由于成本限制,我们不能在组织中使用它。
要上传非Maven项目工件(例如zip,msi等),您可以使用Nexus Artifact Uploader。为此,必须创建一个Maven类型的托管存储库,然后,通过填充GAV参数将工件上传到该存储库,并可以基于GAV参数检索工件。
要将工件部署到测试环境,请使用WinRM Client Plugin连接测试环境。