From 6d9deb776e379c56d1e8cdd4fcc74e36cb234b04 Mon Sep 17 00:00:00 2001 From: Kagol Date: Thu, 27 Nov 2025 15:21:16 +0800 Subject: [PATCH 1/2] ci: add deploy-obs --- .github/workflows/deploy-obs.yml | 67 ++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) create mode 100644 .github/workflows/deploy-obs.yml diff --git a/.github/workflows/deploy-obs.yml b/.github/workflows/deploy-obs.yml new file mode 100644 index 0000000000..c2d8339c0e --- /dev/null +++ b/.github/workflows/deploy-obs.yml @@ -0,0 +1,67 @@ +name: Deploy to Huawei OBS + +on: + push: + branches: [dev] + paths: + - 'examples/sites/**' + - '!examples/sites/**/*.spec.ts' + + workflow_dispatch: + +env: + # 在 GitHub 项目源码仓库 → 项目的 Settings → Secrets(Actions 里的 Repository secrets) 里提前建好以下变量 + HUAWEI_CLOUD_AK: ${{ secrets.HUAWEI_CLOUD_AK }} + HUAWEI_CLOUD_SK: ${{ secrets.HUAWEI_CLOUD_SK }} + HUAWEI_CLOUD_ENDPOINT: ${{ secrets.HUAWEI_CLOUD_ENDPOINT }} + HUAWEI_CLOUD_BUCKET: ${{ secrets.HUAWEI_CLOUD_BUCKET }} + +permissions: + contents: read + pages: write + id-token: write + +jobs: + # Build job + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + - name: Setup pnpm + uses: pnpm/action-setup@v3 + with: + version: 9 + - name: Install deps + run: pnpm i --no-frozen-lockfile + - name: Get version + run: | + echo "VERSION=$(node -p "require('./examples/sites/package.json').version")" >> $GITHUB_ENV + - name: Build site + run: | + export NODE_OPTIONS="--max-old-space-size=8192" + pnpm build:site + env: + VITE_APP_BUILD_BASE_URL: //opentiny-assets.obs.cn-north-4.myhuaweicloud.com/tiny-vue-web-doc/${{ env.VERSION }}/ + - name: Copy files + run: | + cp ./index.html ./404.html + # ===== 下载 obsutil ===== + - name: Install obsutil + run: | + curl -o obsutil.tar.gz https://obs-community.obs.cn-north-1.myhuaweicloud.com/obsutil/current/obsutil_linux_amd64.tar.gz + tar -xzf obsutil.tar.gz + chmod +x obsutil_linux_amd64_*/obsutil + sudo mv obsutil_linux_amd64_*/obsutil /usr/local/bin/obsutil + + # ===== 配置并上传 ===== + - name: Upload to OBS + run: | + # 一次性配置 AK/SK/endpoint + obsutil config -i=${{ env.HUAWEI_CLOUD_AK }} \ + -k=${{ env.HUAWEI_CLOUD_SK }} \ + -e=${{ env.HUAWEI_CLOUD_ENDPOINT }} + + # 把本地 dist/ 目录整站同步到桶根目录 + mv dist ${{ env.VERSION }} + obsutil cp ${{ env.VERSION }} obs://${{ env.HUAWEI_CLOUD_BUCKET }}/tiny-vue-web-doc/ -r -f From 8f3adcf13953667c3f4a7c6563365e1a4a82379f Mon Sep 17 00:00:00 2001 From: Kagol Date: Thu, 27 Nov 2025 16:14:32 +0800 Subject: [PATCH 2/2] fix: fix case error IconSubScript => IconSubscript --- .github/workflows/deploy-obs.yml | 7 +++++-- packages/vue/src/filter/src/tag-group.vue | 8 ++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.github/workflows/deploy-obs.yml b/.github/workflows/deploy-obs.yml index c2d8339c0e..cd03a2c995 100644 --- a/.github/workflows/deploy-obs.yml +++ b/.github/workflows/deploy-obs.yml @@ -45,7 +45,10 @@ jobs: VITE_APP_BUILD_BASE_URL: //opentiny-assets.obs.cn-north-4.myhuaweicloud.com/tiny-vue-web-doc/${{ env.VERSION }}/ - name: Copy files run: | - cp ./index.html ./404.html + ls + ls examples/sites + ls examples/sites/dist + cp ./examples/sites/dist/index.html ./examples/sites/dist/404.html # ===== 下载 obsutil ===== - name: Install obsutil run: | @@ -63,5 +66,5 @@ jobs: -e=${{ env.HUAWEI_CLOUD_ENDPOINT }} # 把本地 dist/ 目录整站同步到桶根目录 - mv dist ${{ env.VERSION }} + mv examples/sites/dist ${{ env.VERSION }} obsutil cp ${{ env.VERSION }} obs://${{ env.HUAWEI_CLOUD_BUCKET }}/tiny-vue-web-doc/ -r -f diff --git a/packages/vue/src/filter/src/tag-group.vue b/packages/vue/src/filter/src/tag-group.vue index 6b59fc830c..183f16502a 100644 --- a/packages/vue/src/filter/src/tag-group.vue +++ b/packages/vue/src/filter/src/tag-group.vue @@ -30,10 +30,10 @@ :class="['h-9 mt-3 float-left relative']" :style="{ width: state.tagWidth }" > - + > import { renderless, api } from '@opentiny/vue-renderless/filter/tag-group' import { setup, $props, defineComponent } from '@opentiny/vue-common' -import { IconSubScript } from '@opentiny/vue-icon' +import { iconSubscript } from '@opentiny/vue-icon' export default defineComponent({ emits: ['click', 'update:modelValue'], - components: { IconSubScript: IconSubScript() }, + components: { IconSubscript: iconSubscript() }, model: { prop: 'modelValue', event: 'update:modelValue'