From 033729ed3ec6df2209cca39bd18d3c6b8c124e54 Mon Sep 17 00:00:00 2001 From: stary <834207172@qq.COM> Date: Wed, 1 Apr 2026 16:01:45 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitea/workflows/.gitlab-ci.yml | 191 +++++++++++--------------------- 1 file changed, 65 insertions(+), 126 deletions(-) diff --git a/.gitea/workflows/.gitlab-ci.yml b/.gitea/workflows/.gitlab-ci.yml index fe1ed84..6e06ab4 100644 --- a/.gitea/workflows/.gitlab-ci.yml +++ b/.gitea/workflows/.gitlab-ci.yml @@ -1,131 +1,70 @@ -default: - image: node:13.11.0 # 显式指定用户 -stages: - - 00.StaryEvo - - 00.StaryEvoTools - - 00.BuildOriginality - - 00.ARMazTools - - 01.HybridCLR - - 02.InformationSave - - 03.YooAsset - - 04.AudioCore - - 05.TableTextConversion - - 06.UIFarme - - 07.RKTools - - 08.UniTask - - 09.CodeChecker - - 10.StoryEditor - - 10.XNode - - 11.PointCloudTools +name: Plugin Library CI -.template_job: &template_job - variables: - MODULE_NAME: "template_job" # 定义模块名称变量 - only: - - master - stage: ${MODULE_NAME} # 使用变量作为stage名称 - tags: - - xosmoPlugin - before_script: - - echo '开始发布' - - sudo ln -sf /srv/node-v13.11.0/bin/node /usr/bin/node # 创建软链接到 bin 目录 - - sudo ln -sf /srv/node-v13.11.0/bin/npm /usr/bin/npm # 创建软链接到 bin 目录 - - node -v # 验证 Node.js 版本 - script: - - cd Assets/${MODULE_NAME} # 动态目录切换 - - echo '${MODULE_NAME}构建完成' # 动态消息提示 - # 获取当前版本 - - CURRENT_VERSION=$(node -p "require('./package.json').version") +on: + push: + branches: [master, main] + workflow_dispatch: # 支持手动触发 +env: + SERVER_HOST: ${{ secrets.SERVER_HOST }} + AuthToken: ${{ secrets.AUTH_TOKEN }} +jobs: + # 定义所有模块矩阵 + publish: + runs-on: xosmoPlugin # 对应你的 GitLab runner tag + container: + image: node:13.11.0 - - echo "registry=http://${SERVER_HOST}/npm" > .npmrc - - echo "//${SERVER_HOST}/:_authToken=${AuthToken}" >> .npmrc - - npm publish - - echo '${MODULE_NAME}构建完成' - allow_failure: true - when: 'on_success' -# 00.StaryEvo -job_StaryEvo: - <<: *template_job - variables: - MODULE_NAME: "00.StaryEvo" # 定义模块名称变量 - stage: 00.StaryEvo + strategy: + fail-fast: false + matrix: + module: + - 00.StaryEvo + - 00.StaryEvoTools + - 00.BuildOriginality + - 00.ARMazTools + - 01.HybridCLR + - 02.InformationSave + - 03.YooAsset + - 04.AudioCore + - 05.TableTextConversion + - 06.UIFarme + - 07.RKTools + - 08.UniTask + - 09.CodeChecker + - 10.StoryEditor + - 10.XNode + - 11.PointCloudTools -job_StaryEvoTools: - <<: *template_job - variables: - MODULE_NAME: "00.StaryEvoTools" # 定义模块名称变量 - stage: 00.StaryEvoTools -job_BuildOriginality: - <<: *template_job - variables: - MODULE_NAME: "00.BuildOriginality" # 定义模块名称变量 - stage: 00.BuildOriginality -job_ARMazTools: - <<: *template_job - variables: - MODULE_NAME: "00.ARMazTools" # 定义模块名称变量 - stage: 00.ARMazTools -job_YooAsset: - <<: *template_job - variables: - MODULE_NAME: "03.YooAsset" # 定义模块名称变量 - stage: 03.YooAsset -job_AudioCore: - <<: *template_job - variables: - MODULE_NAME: "04.AudioCore" # 定义模块名称变量 - stage: 04.AudioCore -job_TableText: - <<: *template_job - variables: - MODULE_NAME: "05.TableTextConversion" # 定义模块名称变量 - stage: 05.TableTextConversion -job_UIFarme: - <<: *template_job - variables: - MODULE_NAME: "06.UIFarme" # 定义模块名称变量 - stage: 06.UIFarme -job_RKTools: - <<: *template_job - variables: - MODULE_NAME: "07.RKTools" # 定义模块名称变量 - stage: 07.RKTools -job_StoryEditor: - <<: *template_job - variables: - MODULE_NAME: "10.StoryEditor" # 定义模块名称变量 - stage: 10.StoryEditor -job_XNode: - <<: *template_job - variables: - MODULE_NAME: "10.XNode" # 定义模块名称变量 - stage: 10.XNode -job_PointCloudTools: - <<: *template_job - variables: - MODULE_NAME: "11.PointCloudTools" # 定义模块名称变量 - stage: 11.PointCloudTools -job_InformationSave: - <<: *template_job - variables: - MODULE_NAME: "02.InformationSave" # 定义模块名称变量 - stage: 02.InformationSave -job_HybridCLR: - <<: *template_job - variables: - MODULE_NAME: "01.HybridCLR" # 定义模块名称变量 - stage: 01.HybridCLR -job_UniTask: - <<: *template_job - variables: - MODULE_NAME: "08.UniTask" # 定义模块名称变量 - stage: 08.UniTask -job_CodeChecker: - <<: *template_job - variables: - MODULE_NAME: "09.CodeChecker" # 定义模块名称变量 - stage: 09.CodeChecker -after_script: - - echo "====== 发布完成 =========" + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Setup Node.js + run: | + ln -sf /srv/node-v13.11.0/bin/node /usr/bin/node + ln -sf /srv/node-v13.11.0/bin/npm /usr/bin/npm + node -v + + - name: Publish ${{ matrix.module }} + working-directory: Assets/${{ matrix.module }} + run: | + echo "开始发布 ${{ matrix.module }}" + + # 获取当前版本 + CURRENT_VERSION=$(node -p "require('./package.json').version") + echo "当前版本: $CURRENT_VERSION" + + # 配置 npm registry + echo "registry=http://${SERVER_HOST}/npm" > .npmrc + echo "//${SERVER_HOST}/:_authToken=${AuthToken}" >> .npmrc + + # 发布 + npm publish || echo "发布失败,继续执行" + + echo "${{ matrix.module }} 构建完成" + + - name: Complete + if: always() + run: echo "====== ${{ matrix.module }} 发布完成 ========="