Merge pull request 'staging' (#17) from staging into master
部署生产环境 / 发布版本 (push) Successful in 19s Details
部署生产环境 / 编译发布 (push) Successful in 5m33s Details

Reviewed-on: #17
This commit is contained in:
yangqiang 2024-05-17 10:07:28 +08:00
commit cf8e8b9fc3
10 changed files with 48 additions and 38 deletions

View File

@ -48,6 +48,7 @@ jobs:
OWNER=${{ gitea.repository_owner }} OWNER=${{ gitea.repository_owner }}
TAG=${{ gitea.ref_name }} TAG=${{ gitea.ref_name }}
ASPNETCORE_ENVIRONMENT=${{ env.ASPNETCORE_ENVIRONMENT }} ASPNETCORE_ENVIRONMENT=${{ env.ASPNETCORE_ENVIRONMENT }}
replicas=1
run: | run: |
echo "$env_file">.env echo "$env_file">.env
@ -59,7 +60,7 @@ jobs:
username: ${{ secrets.PUBLISH_USER_NAME }} username: ${{ secrets.PUBLISH_USER_NAME }}
password: ${{ secrets.PUBLISH_PASSWORD }} password: ${{ secrets.PUBLISH_PASSWORD }}
target: ${{ env.PUBLISH_PATH }} target: ${{ env.PUBLISH_PATH }}
source: docker-compose.yaml,.env source: docker-swarm.yaml,.env
- name: 部署到服务器 - name: 部署到服务器
uses: docker://appleboy/drone-ssh uses: docker://appleboy/drone-ssh
@ -74,7 +75,7 @@ jobs:
[ -f .env ] && export $(sed '/^#/d' .env) [ -f .env ] && export $(sed '/^#/d' .env)
docker stack deploy -c docker-compose.yaml --with-registry-auth mk docker stack deploy -c docker-swarm.yaml --with-registry-auth mk
- name: 发送构建通知 - name: 发送构建通知
if: ${{ always() }} if: ${{ always() }}
@ -93,6 +94,7 @@ jobs:
>**代码分支**: ${{ gitea.ref_name }} >**代码分支**: ${{ gitea.ref_name }}
>**提交标识**: ${{ gitea.sha }} >**提交标识**: ${{ gitea.sha }}
>**提交发起**: ${{ gitea.actor }} >**提交发起**: ${{ gitea.actor }}
>**提交信息**: ${{ gitea.event.head_commit.message }}\n
" "
} }
} }

View File

@ -40,11 +40,11 @@ jobs:
cd D:/marking.cut.service/publish cd D:/marking.cut.service/publish
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30000" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30000"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30001" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30001"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30002" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30002"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30003" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30003"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30004" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30004"
steps: steps:
- name: 下载源码 - name: 下载源码
@ -135,6 +135,7 @@ jobs:
>**代码分支**: ${{ gitea.ref_name }} >**代码分支**: ${{ gitea.ref_name }}
>**提交标识**: ${{ gitea.sha }} >**提交标识**: ${{ gitea.sha }}
>**提交发起**: ${{ gitea.actor }} >**提交发起**: ${{ gitea.actor }}
>**提交信息**: ${{ gitea.event.head_commit.message }}\n
" "
} }
} }

View File

@ -48,6 +48,7 @@ jobs:
OWNER=${{ gitea.repository_owner }} OWNER=${{ gitea.repository_owner }}
TAG=${{ gitea.ref_name }} TAG=${{ gitea.ref_name }}
ASPNETCORE_ENVIRONMENT=${{ env.ASPNETCORE_ENVIRONMENT }} ASPNETCORE_ENVIRONMENT=${{ env.ASPNETCORE_ENVIRONMENT }}
replicas=8
run: | run: |
echo "$env_file">.env echo "$env_file">.env
@ -59,7 +60,7 @@ jobs:
username: ${{ secrets.PUBLISH_USER_NAME }} username: ${{ secrets.PUBLISH_USER_NAME }}
password: ${{ secrets.PUBLISH_PASSWORD }} password: ${{ secrets.PUBLISH_PASSWORD }}
target: ${{ env.PUBLISH_PATH }} target: ${{ env.PUBLISH_PATH }}
source: docker-compose.yaml,.env source: docker-swarm.yaml,.env
- name: 部署到服务器 - name: 部署到服务器
uses: docker://appleboy/drone-ssh uses: docker://appleboy/drone-ssh
@ -74,7 +75,7 @@ jobs:
[ -f .env ] && export $(sed '/^#/d' .env) [ -f .env ] && export $(sed '/^#/d' .env)
docker stack deploy -c docker-compose.yaml --with-registry-auth mk docker stack deploy -c docker-swarm.yaml --with-registry-auth mk
- name: 发送构建通知 - name: 发送构建通知
if: ${{ always() }} if: ${{ always() }}
@ -93,6 +94,7 @@ jobs:
>**代码分支**: ${{ gitea.ref_name }} >**代码分支**: ${{ gitea.ref_name }}
>**提交标识**: ${{ gitea.sha }} >**提交标识**: ${{ gitea.sha }}
>**提交发起**: ${{ gitea.actor }} >**提交发起**: ${{ gitea.actor }}
>**提交信息**: ${{ gitea.event.head_commit.message }}\n
" "
} }
} }

View File

@ -27,11 +27,11 @@ jobs:
cd D:/marking.cut.service/publish cd D:/marking.cut.service/publish
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30000" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30000"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30001" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30001"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30002" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30002"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30003" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30003"
start Dolphin.ExamPictureCut.HttpApi.Host --URLS="http://*:30004" start Dolphin.ExamPictureCut.HttpApi.Host.exe --URLS="http://*:30004"
steps: steps:
- name: 下载源码 - name: 下载源码
@ -132,6 +132,7 @@ jobs:
>**代码分支**: ${{ gitea.ref_name }} >**代码分支**: ${{ gitea.ref_name }}
>**提交标识**: ${{ gitea.sha }} >**提交标识**: ${{ gitea.sha }}
>**提交发起**: ${{ gitea.actor }} >**提交发起**: ${{ gitea.actor }}
>**提交信息**: ${{ gitea.event.release.target_commitish }}\n
" "
} }
} }

View File

@ -391,8 +391,6 @@ public class ExamManager : DomainService, IExamManager
var skPointMode = SKPointMode.Polygon; var skPointMode = SKPointMode.Polygon;
if (points.Length == 1) if (points.Length == 1)
skPointMode = SKPointMode.Points; skPointMode = SKPointMode.Points;
else if (points.Length == 2)
skPointMode = SKPointMode.Lines;
canvas.DrawPoints(skPointMode, points, skPaint); canvas.DrawPoints(skPointMode, points, skPaint);
} }
@ -445,6 +443,7 @@ public class ExamManager : DomainService, IExamManager
catch (Exception ex) catch (Exception ex)
{ {
Logger.LogError("{ExamSubjectId} {penSerial} 收集失败! {error}", eto.ExamSubjectId, penSerial, ex); Logger.LogError("{ExamSubjectId} {penSerial} 收集失败! {error}", eto.ExamSubjectId, penSerial, ex);
await NotifyExt.DingTalk($"{eto.ExamSubjectId} {penSerial} 收集失败! 异常:{ex.Message}");
} }
finally finally
{ {

View File

@ -1,4 +1,5 @@
using Dolphin.ExamPictureCut.Exams; using Dolphin.ExamPictureCut.Exams;
using Dolphin.ExamPictureCut.Extensions;
namespace Dolphin.ExamPictureCut.Services; namespace Dolphin.ExamPictureCut.Services;
@ -14,4 +15,9 @@ public class ExamAppService : DolphinAppService
{ {
await _examManager.ExamStudentGather(new() { SchoolId = 3, StudentExamNum = "BP2-3G3-07K-C1", BookId = 529493484986437, ExamSubjectSchoolId = 530151338438726, ExamSubjectId = 530151329325125, LastCollectTime = DateTime.Now }); await _examManager.ExamStudentGather(new() { SchoolId = 3, StudentExamNum = "BP2-3G3-07K-C1", BookId = 529493484986437, ExamSubjectSchoolId = 530151338438726, ExamSubjectId = 530151329325125, LastCollectTime = DateTime.Now });
} }
public async Task NotifyTest()
{
await NotifyExt.DingTalk($"{530151329325125} {"BP2-3G3-07K-C1"} 收集失败! 异常: {""}");
}
} }

View File

@ -0,0 +1,19 @@
using Flurl.Http;
namespace Dolphin.ExamPictureCut.Extensions;
public class NotifyExt
{
public static async Task DingTalk(string text)
{
await "https://oapi.dingtalk.com/robot/send?access_token=6ddafcada8f44f4bad4a7314c4d9bd19a895ded0a1ba1afdaff5dd01a5af6781".PostJsonAsync(new
{
msgtype = "markdown",
markdown = new
{
title = "异常通知",
text = $"dotpan,{Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}异常\n > 来源:Dplphin.ExamPictureCut\n > 详情:" + text,
}
}).ReceiveString();
}
}

View File

@ -1,4 +1,4 @@
FROM mcr.microsoft.com/dotnet/aspnet:8.0 FROM dotnet/aspnet:8.0
ENV TZ=Asia/Shanghai \ ENV TZ=Asia/Shanghai \
DEBIAN_FRONTEND=noninteractive DEBIAN_FRONTEND=noninteractive

View File

@ -1,20 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="dotnet" arguments=".\Dolphin.ExamPictureCut.HttpApi.Host.dll" stdoutLogEnabled="false" stdoutLogFile=".\Logs\stdout" hostingModel="inprocess" />
</system.webServer>
</location>
<system.webServer>
<httpProtocol>
<customHeaders>
<remove name="x-powered-by" />
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>

View File

@ -12,4 +12,4 @@ services:
# - 9925:80 # - 9925:80
deploy: deploy:
mode: replicated mode: replicated
replicas: 1 replicas: ${replicas:-1}