XFE Git
XFE Studio Git
Git 首页 全局搜索
XFE 主站 文档 NuGet

XFEExtension.NetCore.InputSimulator

【DLL】XFE各类拓展的模拟键盘输入

公开
关注 0 Fork 0 Star 0
返回提交历史

XFEstudio/XFEExtension.NetCore.InputSimulator

修复github工作流

efdd4d3
XFE工作室室长 <mail@xfegzs.com>
提交于

代码差异

2 个文件 +11 -2
Modified .github/PUBLISHING.md +5 -1
@@ -6,6 +6,8 @@
6 6
7 7 `validate.yml` 在以下情况运行:向 `master` / `main` 推送、创建或更新 Pull Request、从 Actions 页面手动触发。
8 8
9 `publish-packages.yml` 通过 `branches-ignore: ["**"]` 显式排除所有分支推送。当前 XFE Actions 解析器只处理分支过滤,没有处理 `push.tags`,因此需要保留这条排除规则;仅配置 `tags: ["v*"]` 会导致普通分支推送也触发发布。版本解析同时检查事件类型和完整标签 ref,避免把分支名当作包版本。
10
9 11 先执行 `driver/Test-Payload.ps1` 检查已提交的完整驱动负载及元数据,再直接构建 .NET 10 项目、运行 `XFEExtension.NetCore.XUnit` 测试并打包主库。测试使用 `dotnet run`,返回失败退出码或未发现测试用例时会阻止后续打包。工作流保存 JSON / JUnit XML、已签名驱动及 `.nupkg`,不会发布包。
10 12
11 13 `signed-driver-payload` 产物包含 Git 中的全部 7 个负载文件:UMDF DLL、INF、CAT、安装器、公开证书及两份元数据。CI 不重编译驱动、不生成或替换签名文件。签名及后续处理见 [驱动签名说明](../driver/SIGNING.md)。
@@ -31,7 +33,7 @@ CI 的仓库完整性检查不替代 Authenticode 信任验证或 CAT 成员验
31 33
32 34 创建 GitHub Release 使用内置 `GITHUB_TOKEN` 和 `contents: write` 权限。已有 GitHub Package 必须允许当前仓库写入,否则需调整包的 Actions 访问权限或配置合适的 `GH_PACKAGES_TOKEN`。
33 35
34 ## 标签发布
36 ## 标签发布(GitHub Actions)
35 37
36 38 1. 确认代码和验证结果已准备好。
37 39 2. 推送版本标签,例如 `v4.0.0` 或 `v4.1.0-preview.1`。
@@ -45,6 +47,8 @@ CI 的仓库完整性检查不替代 Authenticode 信任验证或 CAT 成员验
45 47
46 48 在 Actions → Publish Packages → Run workflow 中选择待发布的 ref,填写不带 `v` 的 `version`。支持三段或四段数字版本,以及 `-preview.1` 形式的预发布后缀。
47 49
50 当前 XFE Actions 使用手动发布:选择包含最新工作流的分支,填写例如 `5.0.0` 的版本号后运行 `Publish Packages`。上述自动标签发布适用于 GitHub Actions;当前 XFE Actions 的推送调度按分支处理,不支持这套标签触发方式。排除分支推送不影响手动运行。
51
48 52 `skip_nuget_org=true` 时仅发布至 GitHub Packages。手动运行不创建 GitHub Release,避免产生与当前 ref 无关的版本标签。工作流使用 `--skip-duplicate` 处理已发布的相同版本,不覆盖现有 NuGet 包。
49 53
50 54 ## 本地验证发布步骤
Modified .github/workflows/publish-packages.yml +6 -1
@@ -2,6 +2,9 @@ name: Publish Packages
2 2
3 3 on:
4 4 push:
5 # XFE Actions needs explicit branch exclusion because it does not parse tag filters.
6 branches-ignore:
7 - "**"
5 8 tags:
6 9 - "v*"
7 10 workflow_dispatch:
@@ -60,8 +63,10 @@ jobs:
60 63 run: |
61 64 $version = if ($env:GITHUB_EVENT_NAME -eq 'workflow_dispatch') {
62 65 $env:REQUESTED_VERSION
66 } elseif ($env:GITHUB_EVENT_NAME -eq 'push' -and $env:GITHUB_REF -cmatch '^refs/tags/v(.+)$') {
67 $Matches[1]
63 68 } else {
64 $env:GITHUB_REF_NAME.Substring(1)
69 throw 'Publishing requires a v-prefixed tag push or a manual run with a version.'
65 70 }
66 71 if ($version -cnotmatch '^\d+\.\d+\.\d+(?:\.\d+)?(?:-[0-9A-Za-z-]+(?:\.[0-9A-Za-z-]+)*)?$') {
67 72 throw 'Invalid package version. Use a numeric version such as 4.0.0 or 4.1.0-preview.1.'