<强>前言强>
企业线上环境是。净框架,自然使用Windows Server平台。现在需求是要对。NET项目进行自动化持续集成,免得每次手动发布,一台台机器登录,那种痛苦干过的都懂得,繁琐,效率低下,误操作等等。而NET与詹金斯的结合使用目前要达到完全自动化还是有局限性的,关键是Windows环境,各种命令无法向Linux方便。网络核心可能会好一些。现有的没办法,得上。
基本组合是詹金斯+ Gitlab + Msbuild。实现代码提交,编译,部署。
-
<李> <>强安装环境与流程强>
1)詹金斯是java产品,需安装JDK8, Windows server 2012环境。
2) . net项目需。净框架支持,这里选择Framework4.6.1.Nuget解决依赖。构建工具Msbuild,基于VS2019下的Msbuild。以上都基于Windows server 2012。刚开始选择server 2008 r2,后面构建打包这种问题,困扰2天,果断换。
3)代码仓库GitLab。选用Centos7.6。
4) . Net项目持续集成流程:
3) 新建Job
4) Job设置
设置保留构建的天数,和构建最大数量
自定义workspace工作空间
5) 获取Git仓库代码
指定Git仓库代码项目分支,这里为测试环境,统一使用dev分支构建。
主要有以下配置项:
Repositories URL:git方式获取代码路径,走ssh协议。
Credentials:授权登录信息,添加凭据。这里使用SSH方式(用户名+私钥方式)登录。需先Jenkins配置SSH方式登录Gitlab。
Branches to build:指定分支。
6) 构建程序配置
6.1安装插件后,进入系统管理->Global Tool Configuration,找到MSbuild配置选项。
这里Path to MABuild配置VS下的MSBuild。不使用C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild目录下的msbuild工具。
6.2 构建前创建Windows batch command,解决项目软件包依赖,配置Nuget。
需在本地安装好nuget。Windows命令如下:
<代码>“E: \程序文件(x86) \ \ nuget工具。exe”恢复“E: \ jenkins-workspace \ APIDataBM-test \ BM.BMData.Web \ BM.BMData。sln configfile " C: \ \用户管理员\ AppData \ \ NuGet \ NuGet徘徊。配置“nocache 代码>
其中Nuget恢复命令是获取项目需要的程序包,解决包的依赖问题。
7)构建环境配置
詹金斯+ GitLab + Msbuild + Python自