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


三、新建流水线


模板选择空模板




相关推荐
Lost of 程序猿3 小时前
用 YARP 为 .NET 微服务搭一座“立交桥“:路由转发与生产配置实践
c#·asp.net
Lost of 程序猿9 小时前
用 Quartz.NET 优雅地处理 .NET 定时任务:从选型到 Docker 部署全记录
后端·c#·asp.net
闲云野鹤在人间1 天前
docker 入门 | 第5章 网络详解
网络·docker·架构·华为云·php
SatanII1 天前
容器运行时Containerd完整学习笔记|原理、安装、ctr/nerdctl/crictl实操全梳理
运维·docker·华为云·containerd
Lost of 程序猿3 天前
.NET 10 船端单机部署与离线升级实战:从闪退事故到无感回滚
c#·asp.net·.net
月落汀兰4 天前
从需求到上线:华为云搭建高可用 Web 站点,ECS/RDS/ELB/AS 组件协同实践
华为云·云计算
月落汀兰4 天前
云上故障怎么排查?华为云 IAM 权限、CES 监控、LTS 日志、CTS 审计完整指南
华为云·云计算
云老大-阿里云国际站代理商5 天前
华为云国际站渠道代理商:Flexus服务器网站打不开怎么办?80/443端口、安全组和Web服务怎么排查
华为云·云计算
Lost of 程序猿6 天前
M2 实战:询价与采购订单聚合落地——跨聚合一致性、领域事件与 Outbox
开发语言·c#·asp.net·.net
.冰块.6 天前
华为云计算服务学习笔记|ECS + 镜像 IMS + 弹性伸缩 AS 完整踩坑实录
linux·华为云·ims·as·ecs·弹性云服务器·计算类云服务