配置项目构建web
添加任务npm
添加源代码地址和登陆凭据json
添加构建触发器 后端
TFS添加WebHook api
添加构建步骤服务器
后端UI app
API端 asp.net
添加源代码地址和登陆凭证测试
此图没有填写凭证时显示的错误ui
点击Credential后面的添加 填写能访问源代码的用户名和密码
选中刚刚添加的用户名和密码
再也不报错 表示填写正确
Branches to build能够不用填写,建议填写须要发布的对应分支
(这里选择,当推送代码到TFS远程版本仓库时,触发构建)
注:若是“构建触发器”不存在此选项 请到Jenkins 插件管理安装插件Team Foundation Server Plug-in
此触发方式须要在服务器上(好比TFS)添加WebHook(若是服务器不支持添加WebHook,能够考虑使用“轮询SCM”,此处未做尝试)
打开TFS 选中项目 右边设置 选择服务挂钩
建立订阅=>Jenkins=>下一步
该类型事件的触发器=>选择 “已推送代码”
筛选器 存储库=>选择对应的存储库
分支=>选择要推送的分支
下一步
设置和身份验证用户名和密码 填写Jenkins访问地址和用户名、密码
集成级别=>选择“Jenkins的TFS插件”
点击测试按钮:
表示出配置成功
若是测试失败,检查Jenkins基URL 后面不要以斜杠(“/”)结尾 (神坑!!!)
npm i
npm run deploy-dev
注:若是不存在此Window Power Shell 请到Jenkins 插件管理安装插件 PowerShell
关于deploy-dev命令 详见后端UI代码package.json文件
构建步骤
dotnet restore
dotnet publish src\Magicodes.Admin.Web.Host\Magicodes.Admin.Web.Host.csproj -c Release
"C:\Program Files (x86)\IIS\Microsoft Web Deploy V3\msdeploy.exe" -source:contentPath=%WORKSPACE%\src\admin\api\Admin.Host\bin\Release\netcoreapp2.1\publish -verb:sync -enableRule:DoNotDeleteRule -allowUntrusted -dest:contentPath='站点名',ComputerName='https://开启WebDeploy的地址:8172/msdeploy.axd?site=站点名',UserName='WebDeploy用户',Password='WebDeploy用户密码',AuthType='Basic'
%WORKSPACE%:Jenkins中当前编译项工做目录 参见Jenkins可用环境变量列表
注意:关于Jenkins系统参数 参考 下面连接
参考连接:
https://weblogs.asp.net/scottgu/automating-deployment-with-microsoft-web-deploy