From ca6834b83ffecb16dbc9ff206044372173615b82 Mon Sep 17 00:00:00 2001 From: MoeFurina Date: Sat, 6 Dec 2025 23:00:49 +0800 Subject: [PATCH] ci(docker): fix cannot be deployed by linux arm64 --- .github/workflows/Build_Image.yml | 10 ++- .../{node.js.yml => node.js.yml.disabled} | 0 .github/workflows/npm.yml | 1 - package.json | 6 +- pnpm-lock.yaml | 73 ++++++++----------- 5 files changed, 41 insertions(+), 49 deletions(-) rename .github/workflows/{node.js.yml => node.js.yml.disabled} (100%) diff --git a/.github/workflows/Build_Image.yml b/.github/workflows/Build_Image.yml index f00cf89..79ab598 100644 --- a/.github/workflows/Build_Image.yml +++ b/.github/workflows/Build_Image.yml @@ -3,7 +3,7 @@ name: Publish Docker image on: push: branches: [main, master] - tags: ["v*"] + tags: ['v*'] workflow_dispatch: permissions: @@ -23,6 +23,12 @@ jobs: id: pkg run: echo "VERSION=$(jq -r .version package.json)" >> $GITHUB_ENV + - name: Set up QEMU + uses: docker/setup-qemu-action@v3 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + - name: Log in to Docker Hub uses: docker/login-action@v3 with: @@ -46,4 +52,4 @@ jobs: moefurina/ncm-api:${{ env.VERSION }} ghcr.io/neteasecloudmusicapienhanced/ncm-api:latest ghcr.io/neteasecloudmusicapienhanced/ncm-api:${{ env.VERSION }} - platforms: linux/amd64 + platforms: linux/amd64,linux/arm64/v8 diff --git a/.github/workflows/node.js.yml b/.github/workflows/node.js.yml.disabled similarity index 100% rename from .github/workflows/node.js.yml rename to .github/workflows/node.js.yml.disabled diff --git a/.github/workflows/npm.yml b/.github/workflows/npm.yml index 58f36f4..da579fc 100644 --- a/.github/workflows/npm.yml +++ b/.github/workflows/npm.yml @@ -2,7 +2,6 @@ name: Release on: - push: workflow_dispatch: jobs: diff --git a/package.json b/package.json index 6755633..25cfc0a 100644 --- a/package.json +++ b/package.json @@ -70,11 +70,11 @@ "axios": "^1.13.2", "crypto-js": "^4.2.0", "dotenv": "^17.2.3", - "express": "^5.1.0", + "express": "^5.2.1", "express-fileupload": "^1.5.2", "md5": "^2.3.0", "music-metadata": "^11.10.3", - "node-forge": "^1.3.2", + "node-forge": "^1.3.3", "pac-proxy-agent": "^7.2.0", "qrcode": "^1.5.4", "safe-decode-uri-component": "^1.2.1", @@ -85,7 +85,7 @@ "devDependencies": { "@eslint/eslintrc": "^3.3.3", "@eslint/js": "^9.39.1", - "@types/express": "^5.0.5", + "@types/express": "^5.0.6", "@types/express-fileupload": "^1.5.1", "@types/mocha": "^10.0.10", "@types/node": "24.10.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 842f28e..6e1716a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -21,8 +21,8 @@ importers: specifier: ^17.2.3 version: 17.2.3 express: - specifier: ^5.1.0 - version: 5.1.0 + specifier: ^5.2.1 + version: 5.2.1 express-fileupload: specifier: ^1.5.2 version: 1.5.2 @@ -33,8 +33,8 @@ importers: specifier: ^11.10.3 version: 11.10.3 node-forge: - specifier: ^1.3.2 - version: 1.3.2 + specifier: ^1.3.3 + version: 1.3.3 pac-proxy-agent: specifier: ^7.2.0 version: 7.2.0 @@ -61,8 +61,8 @@ importers: specifier: ^9.39.1 version: 9.39.1 '@types/express': - specifier: ^5.0.5 - version: 5.0.5 + specifier: ^5.0.6 + version: 5.0.6 '@types/express-fileupload': specifier: ^1.5.1 version: 1.5.1 @@ -273,8 +273,8 @@ packages: '@types/express-serve-static-core@5.1.0': resolution: {integrity: sha512-jnHMsrd0Mwa9Cf4IdOzbz543y4XJepXrbia2T4b6+spXC2We3t1y6K44D3mR8XMFSXMCf3/l7rCgddfx7UNVBA==} - '@types/express@5.0.5': - resolution: {integrity: sha512-LuIQOcb6UmnF7C1PCFmEU1u2hmiHL43fgFQX67sN3H4Z+0Yk0Neo++mFsBjhOAuLzvlQeqAAkeDOZrJs9rzumQ==} + '@types/express@5.0.6': + resolution: {integrity: sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA==} '@types/http-errors@2.0.5': resolution: {integrity: sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==} @@ -282,9 +282,6 @@ packages: '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} - '@types/mime@1.3.5': - resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/mocha@10.0.10': resolution: {integrity: sha512-xPyYSz1cMPnJQhl0CLMH68j3gprKZaTjG3s5Vi+fDgx+uhG9NOXwbVt52eFS8ECyXhyKcjDLCBEqBExKuiZb7Q==} @@ -297,14 +294,11 @@ packages: '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/send@0.17.6': - resolution: {integrity: sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og==} - '@types/send@1.2.1': resolution: {integrity: sha512-arsCikDvlU99zl1g69TcAB3mzZPpxgw0UQnaHeC1Nwb015xp8bknZv5rIfri9xTOcMuaVgvabfIRA7PSZVuZIQ==} - '@types/serve-static@1.15.10': - resolution: {integrity: sha512-tRs1dB+g8Itk72rlSI2ZrW6vZg0YrLI81iQSTkMmOqnqCaNr/8Ek4VwWcN5vZgCYWbg/JJSGBlUaYGAOP73qBw==} + '@types/serve-static@2.2.0': + resolution: {integrity: sha512-8mam4H1NHLtu7nmtalF7eyBH14QyOASmcxHhSfEoRyr0nP/YdoesEtU+uSRvMe96TW/HPTtkoKqQLl53N7UXMQ==} '@typescript-eslint/eslint-plugin@8.46.2': resolution: {integrity: sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w==} @@ -1059,8 +1053,8 @@ packages: resolution: {integrity: sha512-wxUJn2vTHvj/kZCVmc5/bJO15C7aSMyHeuXYY3geKpeKibaAoQGcEv5+sM6nHS2T7VF+QHS4hTWPiY2mKofEdg==} engines: {node: '>=12.0.0'} - express@5.1.0: - resolution: {integrity: sha512-DT9ck5YIRU+8GYzzU5kT3eHGA5iL+1Zd0EutOmTE9Dtk+Tvuzd23VBU+ec7HPNSTxXYO55gPV/hq4pSBJDjFpA==} + express@5.2.1: + resolution: {integrity: sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==} engines: {node: '>= 18'} ext@1.7.0: @@ -1104,9 +1098,9 @@ packages: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} - finalhandler@2.1.0: - resolution: {integrity: sha512-/t88Ty3d5JWQbWYgaOGCCYfXRwV1+be02WqYYlL6h0lEiUAMPM8o8qKGO01YIkOHzka2up08wvgYD0mDiI+q3Q==} - engines: {node: '>= 0.8'} + finalhandler@2.1.1: + resolution: {integrity: sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA==} + engines: {node: '>= 18.0.0'} find-up@4.1.0: resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} @@ -1716,8 +1710,8 @@ packages: encoding: optional: true - node-forge@1.3.2: - resolution: {integrity: sha512-6xKiQ+cph9KImrRh0VsjH2d8/GXA4FIMlgU4B757iI1ApvcyA9VlouP0yZJha01V+huImO+kKMU7ih+2+E14fw==} + node-forge@1.3.3: + resolution: {integrity: sha512-rLvcdSyRCyouf6jcOIPe/BgwG/d7hKjzMKOas33/pHEr6gbq18IK9zV7DiPvzsz0oBJPme6qr6H6kGZuI9/DZg==} engines: {node: '>= 6.13.0'} node-windows@1.0.0-beta.8: @@ -2511,8 +2505,8 @@ packages: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - yaml@2.8.1: - resolution: {integrity: sha512-lcYcMxX2PO9XMGvAJkJ3OsNMw+/7FKes7/hgerGUYWIoWu5j/+YQqcZr5JnPZWzOsEBgMbSbiSTn/dv/69Mkpw==} + yaml@2.8.2: + resolution: {integrity: sha512-mplynKqc1C2hTVYxd0PU2xQAc22TI1vShAYGksCCfxbn/dFwnHTNi1bvYsBTkhdUNtGIf5xNOg938rrSSYvS9A==} engines: {node: '>= 14.6'} hasBin: true @@ -2710,7 +2704,7 @@ snapshots: '@types/express-fileupload@1.5.1': dependencies: '@types/busboy': 1.5.4 - '@types/express': 5.0.5 + '@types/express': 5.0.6 '@types/express-serve-static-core@5.1.0': dependencies: @@ -2719,18 +2713,16 @@ snapshots: '@types/range-parser': 1.2.7 '@types/send': 1.2.1 - '@types/express@5.0.5': + '@types/express@5.0.6': dependencies: '@types/body-parser': 1.19.6 '@types/express-serve-static-core': 5.1.0 - '@types/serve-static': 1.15.10 + '@types/serve-static': 2.2.0 '@types/http-errors@2.0.5': {} '@types/json-schema@7.0.15': {} - '@types/mime@1.3.5': {} - '@types/mocha@10.0.10': {} '@types/node@24.10.0': @@ -2741,20 +2733,14 @@ snapshots: '@types/range-parser@1.2.7': {} - '@types/send@0.17.6': - dependencies: - '@types/mime': 1.3.5 - '@types/node': 24.10.0 - '@types/send@1.2.1': dependencies: '@types/node': 24.10.0 - '@types/serve-static@1.15.10': + '@types/serve-static@2.2.0': dependencies: '@types/http-errors': 2.0.5 '@types/node': 24.10.0 - '@types/send': 0.17.6 '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.3(eslint@9.39.0)(typescript@5.9.3))(eslint@9.39.0)(typescript@5.9.3)': dependencies: @@ -3684,7 +3670,7 @@ snapshots: dependencies: busboy: 1.6.0 - express@5.1.0: + express@5.2.1: dependencies: accepts: 2.0.0 body-parser: 2.2.1 @@ -3693,10 +3679,11 @@ snapshots: cookie: 0.7.2 cookie-signature: 1.2.2 debug: 4.4.3 + depd: 2.0.0 encodeurl: 2.0.0 escape-html: 1.0.3 etag: 1.8.1 - finalhandler: 2.1.0 + finalhandler: 2.1.1 fresh: 2.0.0 http-errors: 2.0.1 merge-descriptors: 2.0.0 @@ -3761,7 +3748,7 @@ snapshots: dependencies: to-regex-range: 5.0.1 - finalhandler@2.1.0: + finalhandler@2.1.1: dependencies: debug: 4.4.3 encodeurl: 2.0.0 @@ -4232,7 +4219,7 @@ snapshots: nano-spawn: 2.0.0 pidtree: 0.6.0 string-argv: 0.3.2 - yaml: 2.8.1 + yaml: 2.8.2 listr2@9.0.5: dependencies: @@ -4392,7 +4379,7 @@ snapshots: dependencies: whatwg-url: 5.0.0 - node-forge@1.3.2: {} + node-forge@1.3.3: {} node-windows@1.0.0-beta.8: dependencies: @@ -5372,7 +5359,7 @@ snapshots: y18n@5.0.8: {} - yaml@2.8.1: {} + yaml@2.8.2: {} yargs-parser@18.1.3: dependencies: