Commit fd8db44e by Archer Committed by GitHub

fix: repair browser sandbox image workflow (#7019)

* fix: repair browser sandbox image workflow

* chore: tune vscode repository scanning
parent ec141108
...@@ -64,7 +64,15 @@ jobs: ...@@ -64,7 +64,15 @@ jobs:
fi fi
- name: Install pnpm - name: Install pnpm
run: npm install -g pnpm@10.33.4 uses: pnpm/action-setup@v4
with:
version: 10.33.4
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: 24
cache: pnpm
- name: Install browser-sandbox dependencies - name: Install browser-sandbox dependencies
run: pnpm install --frozen-lockfile --ignore-scripts --filter @fastgpt/browser-sandbox... run: pnpm install --frozen-lockfile --ignore-scripts --filter @fastgpt/browser-sandbox...
...@@ -86,6 +94,8 @@ jobs: ...@@ -86,6 +94,8 @@ jobs:
permissions: permissions:
packages: write packages: write
contents: read contents: read
attestations: write
id-token: write
strategy: strategy:
matrix: matrix:
include: include:
...@@ -132,19 +142,6 @@ jobs: ...@@ -132,19 +142,6 @@ jobs:
username: ${{ github.repository_owner }} username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- name: Login to Ali Hub
uses: docker/login-action@v3
with:
registry: registry.cn-hangzhou.aliyuncs.com
username: ${{ secrets.FASTGPT_ALI_IMAGE_USER }}
password: ${{ secrets.FASTGPT_ALI_IMAGE_PSW }}
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKER_HUB_NAME }}
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
- name: Build for ${{ matrix.arch }} - name: Build for ${{ matrix.arch }}
id: build id: build
uses: docker/build-push-action@v6 uses: docker/build-push-action@v6
...@@ -157,10 +154,7 @@ jobs: ...@@ -157,10 +154,7 @@ jobs:
org.opencontainers.image.description=fastgpt-browser-sandbox image org.opencontainers.image.description=fastgpt-browser-sandbox image
sbom: true sbom: true
provenance: mode=max provenance: mode=max
outputs: | outputs: type=image,"name=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox",push-by-digest=true,push=true
type=image,"name=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox",push-by-digest=true,push=true
type=image,"name=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox",push-by-digest=true,push=true
type=image,"name=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox",push-by-digest=true,push=true
cache-from: type=local,src=/tmp/.buildx-cache cache-from: type=local,src=/tmp/.buildx-cache
cache-to: type=local,dest=/tmp/.buildx-cache cache-to: type=local,dest=/tmp/.buildx-cache
...@@ -202,6 +196,8 @@ jobs: ...@@ -202,6 +196,8 @@ jobs:
permissions: permissions:
packages: write packages: write
contents: read contents: read
attestations: write
id-token: write
needs: [validate-version, build-fastgpt-browser-sandbox-images] needs: [validate-version, build-fastgpt-browser-sandbox-images]
runs-on: ubuntu-24.04 runs-on: ubuntu-24.04
steps: steps:
...@@ -240,33 +236,34 @@ jobs: ...@@ -240,33 +236,34 @@ jobs:
VERSION="${{ needs.validate-version.outputs.version }}" VERSION="${{ needs.validate-version.outputs.version }}"
echo "Git_Tag=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV echo "Git_Tag=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV
echo "Git_Latest=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV echo "Git_Latest=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV
echo "Git_Base=ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox" >> $GITHUB_ENV
echo "Ali_Tag=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV echo "Ali_Tag=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV
echo "Ali_Latest=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV echo "Ali_Latest=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV
echo "Ali_Base=${{ secrets.FASTGPT_ALI_IMAGE_PREFIX }}/fastgpt-browser-sandbox" >> $GITHUB_ENV
echo "Docker_Hub_Tag=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV echo "Docker_Hub_Tag=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox:${VERSION}" >> $GITHUB_ENV
echo "Docker_Hub_Latest=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV echo "Docker_Hub_Latest=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox:latest" >> $GITHUB_ENV
echo "Docker_Hub_Base=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-browser-sandbox" >> $GITHUB_ENV
- name: Create version manifest lists - name: Create version manifest lists
working-directory: ${{ runner.temp }}/digests working-directory: ${{ runner.temp }}/digests
run: | run: |
git_refs=() refs=()
ali_refs=()
docker_hub_refs=()
for digest in *; do for digest in *; do
git_refs+=("${Git_Base}@sha256:${digest}") refs+=("ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox@sha256:${digest}")
ali_refs+=("${Ali_Base}@sha256:${digest}")
docker_hub_refs+=("${Docker_Hub_Base}@sha256:${digest}")
done done
docker buildx imagetools create -t "${Git_Tag}" "${git_refs[@]}" for tag in "${Git_Tag}" "${Ali_Tag}" "${Docker_Hub_Tag}"; do
docker buildx imagetools create -t "${Ali_Tag}" "${ali_refs[@]}" docker buildx imagetools create -t "${tag}" "${refs[@]}"
docker buildx imagetools create -t "${Docker_Hub_Tag}" "${docker_hub_refs[@]}" sleep 5
done
- name: Create latest manifest lists - name: Create latest manifest lists
if: needs.validate-version.outputs.stable == 'true' if: needs.validate-version.outputs.stable == 'true'
working-directory: ${{ runner.temp }}/digests
run: | run: |
docker buildx imagetools create -t "${Git_Latest}" "${Git_Tag}" refs=()
docker buildx imagetools create -t "${Ali_Latest}" "${Ali_Tag}" for digest in *; do
docker buildx imagetools create -t "${Docker_Hub_Latest}" "${Docker_Hub_Tag}" refs+=("ghcr.io/${{ github.repository_owner }}/fastgpt-browser-sandbox@sha256:${digest}")
done
for tag in "${Git_Latest}" "${Ali_Latest}" "${Docker_Hub_Latest}"; do
docker buildx imagetools create -t "${tag}" "${refs[@]}"
sleep 5
done
{ {
"git.autofetch": false,
"git.detectSubmodules": true,
"git.autoRepositoryDetection": "subFolders",
"git.repositoryScanMaxDepth": 1,
"editor.formatOnSave": true, "editor.formatOnSave": true,
"editor.mouseWheelZoom": true, "editor.mouseWheelZoom": true,
"editor.defaultFormatter": "esbenp.prettier-vscode", "editor.defaultFormatter": "esbenp.prettier-vscode",
......
...@@ -1110,25 +1110,6 @@ importers: ...@@ -1110,25 +1110,6 @@ importers:
specifier: 'catalog:' specifier: 'catalog:'
version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@20.17.24)(@vitest/coverage-v8@4.1.5)(jsdom@26.1.0(bufferutil@4.1.0)(canvas@3.2.3)(utf-8-validate@5.0.10))(vite@6.2.2(@types/node@20.17.24)(jiti@1.21.7)(lightningcss@1.32.0)(sass@1.85.1)(terser@5.39.0)(tsx@4.20.6)(yaml@2.8.4)) version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@20.17.24)(@vitest/coverage-v8@4.1.5)(jsdom@26.1.0(bufferutil@4.1.0)(canvas@3.2.3)(utf-8-validate@5.0.10))(vite@6.2.2(@types/node@20.17.24)(jiti@1.21.7)(lightningcss@1.32.0)(sass@1.85.1)(terser@5.39.0)(tsx@4.20.6)(yaml@2.8.4))
pro/llm_benchmark/content_benchmark:
dependencies:
'@fastgpt/global':
specifier: workspace:*
version: link:../../../packages/global
'@fastgpt/service':
specifier: workspace:*
version: link:../../../packages/service
gpt-tokenizer:
specifier: 'catalog:'
version: 3.4.0
nanoid:
specifier: 'catalog:'
version: 5.1.5
devDependencies:
'@types/node':
specifier: 'catalog:'
version: 20.17.24
pro/browser-sandbox: pro/browser-sandbox:
dependencies: dependencies:
'@modelcontextprotocol/sdk': '@modelcontextprotocol/sdk':
...@@ -1166,6 +1147,34 @@ importers: ...@@ -1166,6 +1147,34 @@ importers:
specifier: 'catalog:' specifier: 'catalog:'
version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@20.17.24)(@vitest/coverage-v8@4.1.5)(jsdom@26.1.0(bufferutil@4.1.0)(canvas@3.2.3)(utf-8-validate@5.0.10))(vite@6.2.2(@types/node@20.17.24)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.85.1)(terser@5.39.0)(tsx@4.20.6)(yaml@2.8.4)) version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@20.17.24)(@vitest/coverage-v8@4.1.5)(jsdom@26.1.0(bufferutil@4.1.0)(canvas@3.2.3)(utf-8-validate@5.0.10))(vite@6.2.2(@types/node@20.17.24)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.85.1)(terser@5.39.0)(tsx@4.20.6)(yaml@2.8.4))
pro/llm_benchmark/content_benchmark:
dependencies:
'@fastgpt/global':
specifier: workspace:*
version: link:../../../packages/global
'@fastgpt/service':
specifier: workspace:*
version: link:../../../packages/service
gpt-tokenizer:
specifier: 'catalog:'
version: 3.4.0
nanoid:
specifier: 'catalog:'
version: 5.1.5
devDependencies:
'@types/node':
specifier: 'catalog:'
version: 20.17.24
tsx:
specifier: 'catalog:'
version: 4.20.6
typescript:
specifier: 'catalog:'
version: 6.0.3
vitest:
specifier: 'catalog:'
version: 4.1.5(@opentelemetry/api@1.9.0)(@types/node@20.17.24)(@vitest/coverage-v8@4.1.5)(jsdom@26.1.0(bufferutil@4.1.0)(canvas@3.2.3)(utf-8-validate@5.0.10))(vite@6.2.2(@types/node@20.17.24)(jiti@2.7.0)(lightningcss@1.32.0)(sass@1.85.1)(terser@5.39.0)(tsx@4.20.6)(yaml@2.8.4))
pro/sso: pro/sso:
dependencies: dependencies:
'@fastgpt-sdk/otel': '@fastgpt-sdk/otel':
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment