Blinue / Magpie

An all-purpose window upscaler for Windows 10/11.
GNU General Public License v3.0
9.66k stars 496 forks source link

使用 CI 发布版本 #737

Closed Blinue closed 1 year ago

Blinue commented 1 year ago

新的 release 工作流只能手动触发,以自动化复杂的发布流程。工作流程如下:

  1. 手动触发,并提供版本号和 tag
  2. 更新 RC 文件
  3. 将版本号和 tag 传入 MSBuild 构建
  4. 为最新提交打上 tag
  5. 将构建出的包压缩成 zip,发布版本
  6. 计算包的哈希值更新 version.json
  7. 提交对 version.json 的更改,RC 文件的更改被丢弃

更新 version.json 应在发布版本之后,因为程序检查 json 文件获取最新版本。

Blinue commented 1 year ago

使用不同渠道构建出的程序有一些区别。使用 release CI 构建的有版本号和 commit id;执行 publish.py 以及 build CI 构建出的无版本号但有 commit id;在 Visual Studio 中构建的则版本号和 commit id 都没有。

代码中使用一些宏来获取这些值,这些宏是否存在取决于构建方式。

MAGPIE_COMMIT_ID MAGPIEVERSION*
release CI
build CI ×
Visual Studio × ×

在源代码中,版本号始终是 0.0.0.0,显示为 "dev" 版本。通过 build CI 和 Visual Studio 构建的版本无法检查更新。