
























@@ -1,10 +1,6 @@
11name: Install Smoke
2233on:
4-push:
5-branches: [main]
6-pull_request:
7-types: [opened, reopened, synchronize, ready_for_review, converted_to_draft]
84schedule:
95 - cron: "17 3 * * *"
106workflow_dispatch:
@@ -30,15 +26,14 @@ permissions:
3026contents: read
31273228concurrency:
33-group: ${{ github.event_name == 'workflow_dispatch' && format('{0}-manual-{1}', github.workflow, github.run_id) || github.event_name == 'pull_request' && format('{0}-{1}', github.workflow, github.event.pull_request.number) || format('{0}-{1}', github.workflow, github.ref) }}
29+group: ${{ github.event_name == 'workflow_dispatch' && format('{0}-manual-{1}', github.workflow, github.run_id) || format('{0}-{1}', github.workflow, github.ref) }}
3430cancel-in-progress: true
35313632env:
3733FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: "true"
38343935jobs:
4036preflight:
41-if: github.event_name != 'pull_request' || !github.event.pull_request.draft
4237runs-on: ubuntu-24.04
4338outputs:
4439docs_only: ${{ steps.manifest.outputs.docs_only }}
@@ -56,67 +51,19 @@ jobs:
5651persist-credentials: false
5752submodules: false
585359- - name: Ensure preflight base commit
60-if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule' && github.event_name != 'workflow_call'
61-uses: ./.github/actions/ensure-base-commit
62-with:
63-base-sha: ${{ github.event_name == 'push' && github.event.before || github.event.pull_request.base.sha }}
64-fetch-ref: ${{ github.event_name == 'push' && github.ref_name || github.event.pull_request.base.ref }}
65-66- - name: Detect docs-only changes
67-id: docs_scope
68-uses: ./.github/actions/detect-docs-changes
69-70- - name: Detect changed smoke scope
71-id: changed_scope
72-if: github.event_name != 'workflow_dispatch' && github.event_name != 'schedule' && github.event_name != 'workflow_call' && steps.docs_scope.outputs.docs_only != 'true'
73-shell: bash
74-run: |
75- set -euo pipefail
76-77- if [ "${{ github.event_name }}" = "push" ]; then
78- BASE="${{ github.event.before }}"
79- else
80- BASE="${{ github.event.pull_request.base.sha }}"
81- fi
82-83- node scripts/ci-changed-scope.mjs --base "$BASE" --head HEAD
84-8554 - name: Build install-smoke CI manifest
8655id: manifest
8756env:
88-OPENCLAW_CI_DOCS_ONLY: ${{ steps.docs_scope.outputs.docs_only }}
8957OPENCLAW_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') && 'true' || 'false' }}
9158OPENCLAW_CI_WORKFLOW_BUN_GLOBAL_INSTALL_SMOKE: ${{ inputs.run_bun_global_install_smoke || 'false' }}
92-OPENCLAW_CI_RUN_FAST_INSTALL_SMOKE: ${{ steps.changed_scope.outputs.run_fast_install_smoke || steps.changed_scope.outputs.run_changed_smoke || 'false' }}
93-OPENCLAW_CI_RUN_FULL_INSTALL_SMOKE: ${{ steps.changed_scope.outputs.run_full_install_smoke || 'false' }}
9459run: |
95- docs_only="${OPENCLAW_CI_DOCS_ONLY:-false}"
9660 event_name="${OPENCLAW_CI_EVENT_NAME:-}"
97- force_full_install_smoke="${OPENCLAW_CI_FORCE_FULL_INSTALL_SMOKE:-false}"
9861 workflow_bun_global_install_smoke="${OPENCLAW_CI_WORKFLOW_BUN_GLOBAL_INSTALL_SMOKE:-false}"
99- run_changed_fast_install_smoke="${OPENCLAW_CI_RUN_FAST_INSTALL_SMOKE:-false}"
100- run_changed_full_install_smoke="${OPENCLAW_CI_RUN_FULL_INSTALL_SMOKE:-false}"
101- run_fast_install_smoke=false
102- run_full_install_smoke=false
62+ docs_only=false
63+ run_fast_install_smoke=true
64+ run_full_install_smoke=true
10365 run_bun_global_install_smoke=false
104- run_install_smoke=false
105- if [ "$force_full_install_smoke" = "true" ]; then
106- run_fast_install_smoke=true
107- run_full_install_smoke=true
108- run_install_smoke=true
109- elif [ "$docs_only" != "true" ] && [ "$event_name" != "push" ] && [ "$run_changed_full_install_smoke" = "true" ]; then
110- run_fast_install_smoke=true
111- run_full_install_smoke=true
112- run_install_smoke=true
113- elif [ "$docs_only" != "true" ] && [ "$run_changed_full_install_smoke" = "true" ]; then
114- run_fast_install_smoke=true
115- run_install_smoke=true
116- elif [ "$docs_only" != "true" ] && [ "$run_changed_fast_install_smoke" = "true" ]; then
117- run_fast_install_smoke=true
118- run_install_smoke=true
119- fi
66+ run_install_smoke=true
12067 if [ "$event_name" = "schedule" ]; then
12168 run_bun_global_install_smoke=true
12269 elif [ "$event_name" = "workflow_dispatch" ] || [ "$event_name" = "workflow_call" ]; then
@@ -326,7 +273,6 @@ jobs:
326273provenance: false
327274328275 - name: Build installer non-root image
329-if: github.event_name != 'pull_request'
330276uses: useblacksmith/build-push-action@cbd1f60d194a98cb3be5523b15134501eaf0fbf3 # v2
331277with:
332278context: ./scripts/docker
@@ -356,8 +302,8 @@ jobs:
356302OPENCLAW_NO_ONBOARD: "1"
357303OPENCLAW_INSTALL_SMOKE_SKIP_CLI: "1"
358304OPENCLAW_INSTALL_SMOKE_SKIP_IMAGE_BUILD: "1"
359-OPENCLAW_INSTALL_NONROOT_SKIP_IMAGE_BUILD: ${{ github.event_name == 'pull_request' && '0' || '1' }}
360-OPENCLAW_INSTALL_SMOKE_SKIP_NONROOT: ${{ github.event_name == 'pull_request' && '1' || '0' }}
305+OPENCLAW_INSTALL_NONROOT_SKIP_IMAGE_BUILD: "1"
306+OPENCLAW_INSTALL_SMOKE_SKIP_NONROOT: "0"
361307OPENCLAW_INSTALL_SMOKE_SKIP_NPM_GLOBAL: "1"
362308OPENCLAW_INSTALL_SMOKE_SKIP_PREVIOUS: "1"
363309OPENCLAW_INSTALL_SMOKE_UPDATE_BASELINE: latest
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。