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
相关推荐
海兰20 小时前
win11下部署elastic9.0+常见问题及解决方法(续)
运维·jenkins
_运维那些事儿21 小时前
GitLabCI/CD语法
linux·服务器·git·ci/cd·gitlab·运维开发·devops
海鸥8121 小时前
k8s中Jenkins 配置文件「 更新不了 」
java·kubernetes·jenkins
_运维那些事儿21 小时前
GitLab&Jenkins
运维·ci/cd·gitlab·jenkins·devops
一念一花一世界21 小时前
Jenkins 太重?试试超轻量开源 CI/CD 工具 Arbess
运维·ci/cd·jenkins·arbess
liux352821 小时前
Elasticsearch 8.13.2 单机部署与配置详细指南
大数据·elasticsearch·jenkins
切糕师学AI1 天前
Jenkins Pipeline 小解
运维·servlet·jenkins
BUTCHER52 天前
elasticsearch时间搜索
大数据·elasticsearch·jenkins
Hellc0072 天前
Jenkins 上下游 Job + Docker 镜像部署完整实战(避坑版)
java·docker·jenkins
Jeacean2 天前
gitlab 仓库所有分支开启分支保护脚本
gitlab