




























@@ -8,6 +8,23 @@ on:
88schedule:
99 - cron: "17 3 * * *"
1010workflow_dispatch:
11+inputs:
12+run_bun_global_install_smoke:
13+description: Run the Bun global install image-provider smoke
14+required: false
15+default: false
16+type: boolean
17+workflow_call:
18+inputs:
19+ref:
20+description: Git ref to validate
21+required: false
22+type: string
23+run_bun_global_install_smoke:
24+description: Run the Bun global install image-provider smoke
25+required: false
26+default: true
27+type: boolean
11281229permissions:
1330contents: read
@@ -28,17 +45,19 @@ jobs:
2845run_install_smoke: ${{ steps.manifest.outputs.run_install_smoke }}
2946run_fast_install_smoke: ${{ steps.manifest.outputs.run_fast_install_smoke }}
3047run_full_install_smoke: ${{ steps.manifest.outputs.run_full_install_smoke }}
48+run_bun_global_install_smoke: ${{ steps.manifest.outputs.run_bun_global_install_smoke }}
3149steps:
3250 - name: Checkout
3351uses: actions/checkout@v6
3452with:
53+ref: ${{ inputs.ref || github.ref }}
3554fetch-depth: 1
3655fetch-tags: false
3756persist-credentials: false
3857submodules: false
39584059 - name: Ensure preflight base commit
41-if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule'
60+if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule' && github.event_name != 'workflow_call'
4261uses: ./.github/actions/ensure-base-commit
4362with:
4463base-sha: ${{ github.event_name == 'push' && github.event.before || github.event.pull_request.base.sha }}
@@ -50,7 +69,7 @@ jobs:
50695170 - name: Detect changed smoke scope
5271id: changed_scope
53-if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule' && steps.docs_scope.outputs.docs_only != 'true'
72+if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule' && github.event_name != 'workflow_call' && steps.docs_scope.outputs.docs_only != 'true'
5473shell: bash
5574run: |
5675 set -euo pipefail
@@ -67,16 +86,21 @@ jobs:
6786id: manifest
6887env:
6988OPENCLAW_CI_DOCS_ONLY: ${{ steps.docs_scope.outputs.docs_only }}
70-OPENCLAW_CI_FORCE_FULL_INSTALL_SMOKE: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || github.event_name == 'push') && 'true' || 'false' }}
89+OPENCLAW_CI_EVENT_NAME: ${{ github.event_name }}
90+OPENCLAW_CI_FORCE_FULL_INSTALL_SMOKE: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'schedule' || github.event_name == 'workflow_call' || github.event_name == 'push') && 'true' || 'false' }}
91+OPENCLAW_CI_WORKFLOW_BUN_GLOBAL_INSTALL_SMOKE: ${{ inputs.run_bun_global_install_smoke || 'false' }}
7192OPENCLAW_CI_RUN_FAST_INSTALL_SMOKE: ${{ steps.changed_scope.outputs.run_fast_install_smoke || steps.changed_scope.outputs.run_changed_smoke || 'false' }}
7293OPENCLAW_CI_RUN_FULL_INSTALL_SMOKE: ${{ steps.changed_scope.outputs.run_full_install_smoke || 'false' }}
7394run: |
7495 docs_only="${OPENCLAW_CI_DOCS_ONLY:-false}"
96+ event_name="${OPENCLAW_CI_EVENT_NAME:-}"
7597 force_full_install_smoke="${OPENCLAW_CI_FORCE_FULL_INSTALL_SMOKE:-false}"
98+ workflow_bun_global_install_smoke="${OPENCLAW_CI_WORKFLOW_BUN_GLOBAL_INSTALL_SMOKE:-false}"
7699 run_changed_fast_install_smoke="${OPENCLAW_CI_RUN_FAST_INSTALL_SMOKE:-false}"
77100 run_changed_full_install_smoke="${OPENCLAW_CI_RUN_FULL_INSTALL_SMOKE:-false}"
78101 run_fast_install_smoke=false
79102 run_full_install_smoke=false
103+ run_bun_global_install_smoke=false
80104 run_install_smoke=false
81105 if [ "$force_full_install_smoke" = "true" ]; then
82106 run_fast_install_smoke=true
@@ -90,11 +114,19 @@ jobs:
90114 run_fast_install_smoke=true
91115 run_install_smoke=true
92116 fi
117+ if [ "$event_name" = "schedule" ]; then
118+ run_bun_global_install_smoke=true
119+ elif [ "$event_name" = "workflow_dispatch" ] || [ "$event_name" = "workflow_call" ]; then
120+ if [ "$workflow_bun_global_install_smoke" = "true" ]; then
121+ run_bun_global_install_smoke=true
122+ fi
123+ fi
93124 {
94125 echo "docs_only=$docs_only"
95126 echo "run_install_smoke=$run_install_smoke"
96127 echo "run_fast_install_smoke=$run_fast_install_smoke"
97128 echo "run_full_install_smoke=$run_full_install_smoke"
129+ echo "run_bun_global_install_smoke=$run_bun_global_install_smoke"
98130 } >> "$GITHUB_OUTPUT"
99131100132 install-smoke-fast:
@@ -107,6 +139,8 @@ jobs:
107139steps:
108140 - name: Checkout CLI
109141uses: actions/checkout@v6
142+with:
143+ref: ${{ inputs.ref || github.ref }}
110144111145 - name: Set up Blacksmith Docker Builder
112146uses: useblacksmith/setup-docker-builder@ac083cc84672d01c60d5e8561d0a939b697de542 # v1
@@ -193,6 +227,8 @@ jobs:
193227steps:
194228 - name: Checkout CLI
195229uses: actions/checkout@v6
230+with:
231+ref: ${{ inputs.ref || github.ref }}
196232197233 - name: Set up Blacksmith Docker Builder
198234uses: useblacksmith/setup-docker-builder@ac083cc84672d01c60d5e8561d0a939b697de542 # v1
@@ -298,12 +334,14 @@ jobs:
298334provenance: false
299335300336 - name: Setup Node environment for local pack smoke
337+if: needs.preflight.outputs.run_bun_global_install_smoke == 'true'
301338uses: ./.github/actions/setup-node-env
302339with:
303340install-bun: "true"
304341install-deps: "true"
305342306343 - name: Run Bun global install image-provider smoke
344+if: needs.preflight.outputs.run_bun_global_install_smoke == 'true'
307345env:
308346OPENCLAW_BUN_GLOBAL_SMOKE_DIST_IMAGE: openclaw-dockerfile-smoke:local
309347OPENCLAW_BUN_GLOBAL_SMOKE_HOST_BUILD: "0"
@@ -336,6 +374,8 @@ jobs:
336374steps:
337375 - name: Checkout CLI
338376uses: actions/checkout@v6
377+with:
378+ref: ${{ inputs.ref || github.ref }}
339379340380 - name: Set up Blacksmith Docker Builder
341381uses: useblacksmith/setup-docker-builder@ac083cc84672d01c60d5e8561d0a939b697de542 # v1
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。