From 152e4984a7907a83b28c54885fd9fb621463b704 Mon Sep 17 00:00:00 2001 From: taynpg Date: Thu, 29 Jan 2026 20:26:17 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E6=B0=B4=E7=BA=BF=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitlab-ci.yml | 132 +++++++++++++++++++++++++++++++++++++++++++++++++ README.md | 4 +- 2 files changed, 134 insertions(+), 2 deletions(-) create mode 100644 .gitlab-ci.yml diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..924e749 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,132 @@ +stages: + - build + - release + +variables: + VS_DIR: "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools" + VS_ENV: "C:/Program Files (x86)/Microsoft Visual Studio/2022/BuildTools/Common7/Tools/Microsoft.VisualStudio.DevShell.dll" + CMAKE_BUILD_TYPE: Release + PROJECT_VERSION: "0.2.4" + CMAKE_GENERATOR: "Ninja" + PROJECT_NAME: "frelay" + ARCH_TYPE: x64 + QT_PATH: "C:/Dev/qt6" + QT_XP: "C:/Qt/Qt5.7.1" + RELEASENAME: "$PROJECT_NAME-v$PROJECT_VERSION" + DESCRIPTION: | + # BUG修正 + + - 上传方完成后,接收端未接收完毕不能退出的问题。 + - 主动中断检查等待后,软件崩溃。 + + # 优化 + + - 优化访问文件过多时,界面有卡顿情况。 + - 优化资源占用多的问题。 + + # 功能新增 + + - 支持弹窗查看文件(夹)属性。 + - 支持删除、重命名、新建文件(夹)。 + - 文件管理器新增直接可以下载/上传功能。 + - Console端,断连或者连接失败自动退出。 + + # 关于预构建包 + + Windows XP系统请使用`Windows-GNU`版本。 + +# Windows运行器配置 +.win-template: &win + tags: + - win + before_script: + - echo "Running on Windows runner" + artifacts: + expire_in: 1 hour + +# Windows构建 - 在win运行器上执行 +build-xp: + <<: *win + stage: build + rules: + - if: $CI_COMMIT_TAG + before_script: + - $env:QT_DIR = "$env:QT_XP/5.7/mingw53_32" + - $env:COMPILE_DIR = "$env:QT_XP/Tools/mingw530_32" + - $env:PATH = "$env:COMPILE_DIR/bin;$env:PATH" + script: + - Write-Host "开始Windows XP构建..." + - Write-Host "$env:QT_DIR" + - Write-Host "$env:COMPILE_DIR" + - cmake -Bbuild-xp -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" -DCMAKE_PREFIX_PATH="$env:QT_DIR" -DQT_DEFAULT_MAJOR_VERSION=5 -DCOMPILE_GUI=ON -DRELEASE_MARK=ON + - cmake --build build-xp --config "$CMAKE_BUILD_TYPE" + - Write-Host "package windows start..." + - cd build-xp + - cpack + artifacts: + paths: + - build-xp/frelay-release-v$PROJECT_VERSION-Windows-GNU.exe + - build-xp/frelay-release-v$PROJECT_VERSION-Windows-GNU.zip + +build-windows: + <<: *win + stage: build + rules: + - if: $CI_COMMIT_TAG + script: + - Import-Module $VS_ENV + - Enter-VsDevShell -VsInstallPath $VS_DIR -DevCmdArguments "-arch=$ARCH_TYPE" + - cmake -Bbuild -G "$CMAKE_GENERATOR" -DCMAKE_BUILD_TYPE="$CMAKE_BUILD_TYPE" -DCMAKE_PREFIX_PATH="$QT_PATH" -DQT_DEFAULT_MAJOR_VERSION=6 -DCOMPILE_GUI=ON -DRELEASE_MARK=ON + - cmake --build build --config "$CMAKE_BUILD_TYPE" + - Write-Host "package windows start..." + - cd build + - cpack + artifacts: + paths: + - build/frelay-release-v$PROJECT_VERSION-Windows-MSVC.exe + - build/frelay-release-v$PROJECT_VERSION-Windows-MSVC.zip + +create-release: + stage: release + needs: ["build-windows", "build-xp"] + tags: + - pi + variables: + RELEASE_TAG: "v$PROJECT_VERSION" + RELEASE_NAME: "$RELEASENAME" + RELEASE_DESCRIPTION: "$DESCRIPTION" + rules: + - if: $CI_COMMIT_TAG + script: + - echo "start release" + - > + curl --fail --show-error --header "JOB-TOKEN: $CI_JOB_TOKEN" \ + --upload-file "build/frelay-release-v$PROJECT_VERSION-Windows-MSVC.exe" \ + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-MSVC.exe" + - > + curl --fail --show-error --header "JOB-TOKEN: $CI_JOB_TOKEN" \ + --upload-file "build/frelay-release-v$PROJECT_VERSION-Windows-MSVC.zip" \ + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-MSVC.zip" + - > + curl --fail --show-error --header "JOB-TOKEN: $CI_JOB_TOKEN" \ + --upload-file "build-xp/frelay-release-v$PROJECT_VERSION-Windows-GNU.exe" \ + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-GNU.exe" + - > + curl --fail --show-error --header "JOB-TOKEN: $CI_JOB_TOKEN" \ + --upload-file "build-xp/frelay-release-v$PROJECT_VERSION-Windows-GNU.zip" \ + "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-GNU.zip" + + release: + tag_name: $RELEASE_TAG + name: $RELEASE_NAME + description: $RELEASE_DESCRIPTION + assets: + links: + - name: "frelay-release-v$PROJECT_VERSION-Windows-MSVC.exe" + url: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-MSVC.exe" + - name: "frelay-release-v$PROJECT_VERSION-Windows-MSVC.zip" + url: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-MSVC.zip" + - name: "frelay-release-v$PROJECT_VERSION-Windows-GNU.exe" + url: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-GNU.exe" + - name: "frelay-release-v$PROJECT_VERSION-Windows-GNU.zip" + url: "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/releases/v$PROJECT_VERSION/frelay-release-v$PROJECT_VERSION-Windows-GNU.zip" \ No newline at end of file diff --git a/README.md b/README.md index 2b220a4..594b6d4 100644 --- a/README.md +++ b/README.md @@ -19,9 +19,9 @@ ## 示例图 -![示例图片](https://github.com/taynpg/frelay/raw/main/img/10.png) +![示例图片](img/10.png) -![示例图片](https://github.com/taynpg/frelay/raw/main/img/xp.png) +![示例图片](img/xp.png) ## 注意事项