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
相关推荐
JavaDog程序狗6 小时前
【指南】uni-app微信小程序多环境CI-CD完全指南
ci/cd·uni-app·jenkins
heimeiyingwang2 天前
【GitOps·入门篇】工具生态:ArgoCD、Flux、Jenkins X 对比选型
jenkins·flux·argocd·gitops
Jeanyia2 天前
GitLab 配套 Git 常用命令
git·gitlab
极小狐2 天前
极狐GitLab 补丁版本:19.2.1、19.1.3、19.0.5
网络·安全·gitlab·极狐gitlab·安全更新·补丁版本
骇客野人2 天前
基于Nginx+Eureka+Apollo+Jenkins+SpringBoot Web系统分布式部署方案
nginx·eureka·jenkins
rustfs3 天前
GitLab 如何与 RustFS 集成?
分布式·rust·gitlab
中才实用3 天前
Jenkins自动化部署
运维·自动化·jenkins
郝亚军5 天前
gitlab常用命令
gitlab
童槿顏丶6 天前
Jenkins部署(Docker)
java·docker·jenkins
xixingzhe28 天前
Java 使用 GitLab4J 实现 WebHook
gitlab