PowerShell~发布你的mvc网站
通过使用ps加上msbuild可以方便的编译你的.net应用程序,并且可以把它发布到你的磁盘上,部署非常方例!
我们在c盘添加一个hello网站,解决方案名是hello.sln,它的网站是hello.csproj,现在使用这个脚本来生成这个网站和发布这个网站!
$ErrorActionPreference = 'Stop' # Environment helpers ------------------------------------ Function Get-MsBuildPath() { $msBuildRegPath = "HKLM:\SOFTWARE\Microsoft\MSBuild\ToolsVersions\14.0" $msBuildPathRegItem = Get-ItemProperty $msBuildRegPath -Name "MSBuildToolsPath" $msBuildPath = $msBuildPathRegItem.MsBuildToolsPath + "msbuild.exe" return $msBuildPath } # Environment variables ---------------------------------- $global_buildDirPath = Get-Location $global_msBuildPath = Get-MsBuildPath $global_solutionPath = "$global_buildDirPath" $global_solutionFilePath = "$global_solutionPath\hello.sln" $global_nugetPath = "$global_buildDirPath\tools\nuget.exe" # Install nuget packages --------------------------------- Function Install-SolutionPackages() { iex "$global_nugetPath restore $global_solutionFilePath" } # compile Function Compile-Publish-Project() { iex -Command "& '$global_msBuildPath' '$project_path' /p:Configuration=Release /p:WebProjectOutputDir=C:\publish\hello /p:OutputPath=C:\publish\hello\bin" } Install-SolutionPackages Compile-Publish-Project
最后生成的网站结果为
这个功能对于自动化部署非常有必要,大叔会对这块内容做进一步的研究和优化!
谢谢!
分类:
持续集成CI/CD
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
2016-07-05 不说技术~2016-07-02我们是幸福的一家人
2013-07-05 基础才是重中之重~理解linq中的groupby
2012-07-05 有意思的业务~根据角色与信息状态,显示指定信息列表
2011-07-05 不忘本~接口