




















@@ -59,19 +59,81 @@ jobs:
5959PACKAGE_SPEC: ${{ inputs.package_spec }}
6060run: echo "Approved npm Telegram beta E2E for ${PACKAGE_SPEC}"
616162+prepare_docker_e2e_image:
63+name: Prepare Docker E2E image
64+needs: validate_dispatch_ref
65+runs-on: blacksmith-32vcpu-ubuntu-2404
66+timeout-minutes: 90
67+permissions:
68+contents: read
69+packages: write
70+outputs:
71+image: ${{ steps.image.outputs.image }}
72+env:
73+DOCKER_BUILD_SUMMARY: "false"
74+DOCKER_BUILD_RECORD_UPLOAD: "false"
75+steps:
76+ - name: Checkout main
77+uses: actions/checkout@v6
78+with:
79+ref: ${{ github.sha }}
80+fetch-depth: 1
81+82+ - name: Resolve Docker E2E image tag
83+id: image
84+shell: bash
85+env:
86+SELECTED_SHA: ${{ github.sha }}
87+run: |
88+ set -euo pipefail
89+ repository="${GITHUB_REPOSITORY,,}"
90+ image="ghcr.io/${repository}-docker-e2e:${SELECTED_SHA}"
91+ echo "image=$image" >> "$GITHUB_OUTPUT"
92+ echo "Docker E2E image: \`$image\`" >> "$GITHUB_STEP_SUMMARY"
93+94+ - name: Log in to GHCR
95+uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4
96+with:
97+registry: ghcr.io
98+username: ${{ github.actor }}
99+password: ${{ github.token }}
100+101+ - name: Build and push Docker E2E image
102+uses: docker/build-push-action@bcafcacb16a39f128d818304e6c9c0c18556b85f # v7.1.0
103+with:
104+context: .
105+file: ./scripts/e2e/Dockerfile
106+target: build
107+platforms: linux/amd64
108+cache-from: type=gha,scope=docker-e2e
109+cache-to: type=gha,mode=max,scope=docker-e2e
110+tags: ${{ steps.image.outputs.image }}
111+provenance: false
112+push: true
113+62114run_npm_telegram_beta_e2e:
63115name: Run published npm Telegram E2E
64-needs: approve_release_manager
116+needs: [approve_release_manager, prepare_docker_e2e_image]
65117runs-on: blacksmith-32vcpu-ubuntu-2404
66118timeout-minutes: 60
67119environment: qa-live-shared
120+permissions:
121+contents: read
122+packages: read
68123steps:
69124 - name: Checkout main
70125uses: actions/checkout@v6
71126with:
72127ref: ${{ github.sha }}
73128fetch-depth: 1
74129130+ - name: Log in to GHCR
131+uses: docker/login-action@4907a6ddec9925e35a0a9e82d7399ccc52663121 # v4
132+with:
133+registry: ghcr.io
134+username: ${{ github.actor }}
135+password: ${{ github.token }}
136+75137 - name: Setup Node environment
76138uses: ./.github/actions/setup-node-env
77139with:
@@ -114,6 +176,8 @@ jobs:
114176shell: bash
115177env:
116178OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
179+OPENCLAW_SKIP_DOCKER_BUILD: "1"
180+OPENCLAW_DOCKER_E2E_IMAGE: ${{ needs.prepare_docker_e2e_image.outputs.image }}
117181OPENCLAW_NPM_TELEGRAM_PACKAGE_SPEC: ${{ inputs.package_spec }}
118182OPENCLAW_NPM_TELEGRAM_PROVIDER_MODE: ${{ inputs.provider_mode }}
119183OPENCLAW_NPM_TELEGRAM_CREDENTIAL_SOURCE: convex
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。