Jenkins构建gitlab自动发布IIS

自由项目构建

1.服务器上下载JenkinsJenkins download and deployment

下载安装时会报错Service 'Jenkins' (Jenkins) failed to start. verify that you have sufficient privileges to start

解决办法:服务打开Jenkins-属性-登录-本地系统账户

2.安装java配置环境变量,安装visual studio

3.在gitlab上传.net项目,同时把项目放到服务器上

4.配置:新建item->配置

4.1源码管理:Credentials可以点击用户图像->Credentials设置全局凭证
4.2 Build Steps(构建步骤)

现在的项目是多个服务组成的,多个服务怎么构建呢

build steps进行配置

msbuild build file:需要把要构建的项目放到服务器上,这个路径就是该项目的解决方案文件

复制代码
/t:Rebuild  #重新生成
/p:Configuration=Release  #生成方式
/p:VisualStudioVersion=15.0  #vs版本
/p:DeployOnBuild=True;PublishProfile=Testing-Environment-CI-publish #使用 Testing-Environment-CI-publish.pubxml 发布文件来发布项目
/p:WebProjectOutputDir=C:\publish\JenkinsTest  #发布目录
/p:OutputPath=C:\publish\JenkinsTest\bin     #dll产生路径
复制代码
c:
cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin  
msbuild C:\ProgramData\Jenkins\.jenkins\workspace\pos_service_center\WebAPI_HY_POS.sln /t:Rebuild
msbuild C:\ProgramData\Jenkins\.jenkins\workspace\pos_service_center\WebAPI_HY_POS.sln /t:Rebuild /p:PublishProfile=FolderProfile  /p:WebProjectOutputDir=C:\publish\pos_service_center /p:OutputPath=C:\publish\pos_service_center\bin

5.点击保存后,build now

构建失败的话,可以查看控制台输出

报错1.msbuild.exe不是内部或外部命令,也不是可运行的程序

解决办法:在系统环境变量中的path变量中添加一条路径:

;C:\Windows\Microsoft.NET\Framework\v4.0.30319;C:\Windows\Microsoft.NET\Framework64\v4.0.30319

报错2:对应的visual studio 版本文件下找不到Microsoft.WebApplication.targets文件

解决办法:搜索Microsoft.WebApplication.targets,从别的地方复制过去

构建后解决方案一直报错,因为引用的dll在服务器的环境中有些不符合的,没安装一些软件导致dll路径对应不上

解决办法:将缺少的dll上传到gitlab,然后push解决方案

可以在msbuild的bin目录C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin下面执行以下命令,查看相关报错后再上传git:

复制代码
msbuild C:\ProgramData\Jenkins\.jenkins\workspace\pos_service_center\WebAPI_HY_POS.sln /t:Rebuild /p:PublishProfile=FolderProfile  /p:WebProjectOutputDir=C:\publish\pos_service_center /p:OutputPath=C:\publish\pos_service_center\bin
相关推荐
一念一花一世界5 小时前
DevOps实战(4) - 使用Arbess+GitLab+SourceFare实现Java项目自动化部署
gitlab·tiklab·arbess·开源cicd工具·sourcefare
赵孝正6 小时前
GitLab 分支管理与 Push 问题全解析
大数据·elasticsearch·gitlab
syty202012 小时前
elastic search 是如何做sum操作的
运维·jenkins
wjs0401 天前
Git常用的命令
java·git·gitlab
至善迎风1 天前
版本管理系统与平台(权威资料核对、深入解析、行业选型与国产平台补充)
git·gitee·gitlab·github·svm
高旭的旭1 天前
Gitlab 配置自定义 clone 地址
svn·ssh·gitlab·code
苦逼IT运维1 天前
Jenkins 监控方案:Prometheus + Grafana 实践
jenkins·grafana·prometheus
一念一花一世界1 天前
DevOps实战(3) - 使用Arbess+GitLab+Hadess实现Java项目自动化部署
gitlab·jenkins·tiklab·arbess·开源cicd工具
小薛博客1 天前
22、Jenkins容器化部署Java应用
java·运维·jenkins
观测云2 天前
Jenkins 可观测最佳实践
jenkins