.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"
}


三、新建流水线


模板选择空模板




相关推荐
九河云8 小时前
5秒开服,你的应用部署还卡在“加载中”吗?
大数据·人工智能·安全·机器学习·华为云
无风听海19 小时前
.NET10之ASP.NET Core的Filter管线
java·asp.net·.net
William_cl20 小时前
ASP.NET路由长度约束精讲:[HttpGet (“{name:minlength (3)}“)] 字符长度限制吃透,附避坑指南 + 实战代码
后端·asp.net
CDERgglUoMg1 天前
BLDC直流无刷电机FOC控制 在Matlab/Simulink中实现了无刷直流电机的磁场定向...
华为云
奥特曼打小白5 天前
Microsoft SQL Server2025的下载、安装与配置——从环境、管理工具、配置管理器入手,解决VS2022ASP.NET网站项目中SqlDataSource控件找不到服务器的问题
sqlserver·asp.net
William_cl5 天前
ASP.NET路由类型约束核心精讲:[HttpGet (“{id:int}“)] 整数约束吃透,附避坑指南 + 实战代码
后端·asp.net
步步为营DotNet6 天前
深入理解ASP.NET Core Middleware:管道执行机制与高效应用
后端·asp.net
开开心心_Every7 天前
发票批量打印工具支持双面预览页面方向设置
游戏·微信·pdf·华为云·excel·语音识别·googlecloud
TracyCoder1237 天前
解读华为云Redis Proxy集群规格:架构、规格与带宽性能
redis·架构·华为云
江湖有缘7 天前
华为云之基于鲲鹏服务器部署打砖块小游戏全流程
服务器·华为云·github