.NET Framework华为云流水线发布

文章目录


前言

华为云流水线发布:自动检查代码,打包发布到服务器


一、新建代码检查

检查代码是否存在报错

设置规则集

二、新建编译构建







三、新建部署

模板选择空模板或者自己去创建自定义模板

bash 复制代码
$directory = "${ProjectFile}"; if (-not (Test-Path -Path $directory)) { New-Item -Path $directory -ItemType Directory }


bash 复制代码
$siteName = "dev"  # 替换成你的网站名称

$site = Get-Website -Name $siteName

if ($site.State -eq "Started") {
    C:\Windows\System32\inetsrv\appcmd.exe stop apppool /apppool.name:$siteName;
    Stop-Website -Name $siteName;
    Write-Host "The website $siteName has been stopped";
} else {
    Write-Host "The website $siteName is in an unknown state"
}
bash 复制代码
#上面截图:同时发布的两个站点,所以和下面的代码是不一样的,下面的去掉了一个站点
# 定义源文件路径和目标文件夹路径
$sourceFilePath = "${ProjectFile}/"
$destinationFolderPath = "D:/work/WebBackUp/service/${Project}/"

# 获取当前时间戳
$timestamp = Get-Date -Format "yyyyMMdd_HHmmss"

# 构建目标文件路径
$destinationFilePath = Join-Path -Path $destinationFolderPath -ChildPath "file_$timestamp"

# 确保目标文件夹存在
if (-not (Test-Path -Path $destinationFolderPath)) {
    New-Item -ItemType Directory -Path $destinationFolderPath
}

# 删除目标文件夹中的所有文件和子文件夹
Remove-Item -Path (Join-Path -Path $destinationFolderPath -ChildPath "*") -Recurse -Force

# 复制 $sourceFilePath 文件
Copy-Item -Path $sourceFilePath -Destination $destinationFilePath -Recurse -Force

删除文件根据自己需要添加,不再一 一截图了

bash 复制代码
#上面截图:同时发布的两个站点,所以和下面的代码是不一样的,下面的去掉了一个站点

Copy-Item -Path D:/AppPackage/${Project}/${Time}/_PublishedWebsites/Web/* -Destination ${ProjectFile} -Recurse -Force
bash 复制代码
#上面截图:同时发布的两个站点,所以和下面的代码是不一样的,下面的去掉了一个站点
$siteName = "dev"  # 替换成你的网站名称

$site = Get-Website -Name $siteName

if ($site.State -eq "Stopped") {
    C:\Windows\System32\inetsrv\appcmd.exe start apppool /apppool.name:$siteName;
    Start-Website -Name $siteName;
    Write-Host "The website $siteName is running";
} else {
    Write-Host "The website $siteName is in an unknown state"
}


三、新建流水线


模板选择空模板




相关推荐
Aevget7 小时前
界面控件DevExpress JS & ASP.NET Core v25.1 - 全新的Stepper组件
javascript·asp.net·界面控件·devexpress·ui开发
kkk_皮蛋11 小时前
信令是什么?为什么 WebRTC 需要信令?
后端·asp.net·webrtc
2301_800256111 天前
第十一章中的函数解读(1)
后端·asp.net
武藤一雄2 天前
[.NET] 中 System.Collections.Generic命名空间详解
windows·微软·c#·asp.net·.net·.netcore
2501_924794903 天前
告别报告撰写“时间黑洞”:华为云Flexus AI智能体,重塑企业研究与决策效率
人工智能·华为云
2501_924794904 天前
告别“创意枯竭周期”:华为云Flexus AI智能体如何重构传统企业营销内容生产力
人工智能·重构·华为云
William_cl4 天前
【CSDN 专栏】C# ASP.NET控制器过滤器:自定义 ActionFilterAttribute 实战(避坑 + 图解)
c#·asp.net·状态模式
William_cl4 天前
【CSDN 专栏】C# ASP.NET Razor 视图引擎实战:.cshtml 从入门到避坑(图解 + 案例)
开发语言·c#·asp.net
是Yu欸4 天前
①【openFuyao】智算时代的异构算力连接器
华为·华为云·算力·openfuyao
靓仔建5 天前
在asp.net web应用程序,老是访问同一个Handler1.ashx
后端·asp.net·一般处理程序