File tree Expand file tree Collapse file tree 3 files changed +68
-6
lines changed
Expand file tree Collapse file tree 3 files changed +68
-6
lines changed Original file line number Diff line number Diff line change 1+ name : Build Base Image
2+
3+ on :
4+ workflow_dispatch :
5+ push :
6+ branches :
7+ - main
8+ paths :
9+ - ' openclaw-base/**'
10+
11+ env :
12+ REGISTRY : higress-registry.cn-hangzhou.cr.aliyuncs.com
13+ REPO : higress
14+
15+ jobs :
16+ build-base :
17+ runs-on : ubuntu-latest
18+ permissions :
19+ contents : read
20+
21+ steps :
22+ - name : Free Up GitHub Actions Ubuntu Runner Disk Space 🔧
23+ uses : jlumbroso/free-disk-space@main
24+ with :
25+ tool-cache : false
26+ android : true
27+ dotnet : true
28+ haskell : true
29+ large-packages : true
30+ swap-storage : true
31+
32+ - name : Checkout
33+ uses : actions/checkout@v4
34+
35+ - name : Set up QEMU
36+ uses : docker/setup-qemu-action@v3
37+
38+ - name : Set up Docker Buildx
39+ uses : docker/setup-buildx-action@v3
40+
41+ - name : Login to Registry
42+ uses : docker/login-action@v3
43+ with :
44+ registry : ${{ env.REGISTRY }}
45+ username : ${{ secrets.REGISTRY_USERNAME }}
46+ password : ${{ secrets.REGISTRY_PASSWORD }}
47+
48+ - name : Build and push multi-arch base image
49+ run : |
50+ make push-openclaw-base \
51+ VERSION=latest \
52+ REGISTRY=${{ env.REGISTRY }} \
53+ REPO=${{ env.REPO }}
54+
55+ - name : Summary
56+ run : |
57+ echo "### Base Image Build Summary" >> $GITHUB_STEP_SUMMARY
58+ echo "- OpenClaw Base: \`${{ env.REGISTRY }}/${{ env.REPO }}/openclaw-base:latest\`" >> $GITHUB_STEP_SUMMARY
59+ echo "- Platforms: \`linux/amd64, linux/arm64\`" >> $GITHUB_STEP_SUMMARY
60+ echo "- Trigger: \`${{ github.event_name }}\` on \`${{ github.ref_name }}\`" >> $GITHUB_STEP_SUMMARY
Original file line number Diff line number Diff line change 6262 # also pushes :latest in the same buildx call, so no separate step needed.
6363 - name : Build and push multi-arch images
6464 run : |
65- make push \
65+ make push-manager push-worker \
6666 VERSION=${{ steps.meta.outputs.version }} \
6767 REGISTRY=${{ env.REGISTRY }} \
6868 REPO=${{ env.REPO }}
7474 WORKER_IMAGE : ${{ env.REGISTRY }}/${{ env.REPO }}/hiclaw-worker
7575 run : |
7676 echo "### Build Summary" >> $GITHUB_STEP_SUMMARY
77- echo "- OpenClaw Base: \`${OPENCLAW_BASE_IMAGE}:${{ steps.meta.outputs.version }}\`" >> $GITHUB_STEP_SUMMARY
7877 echo "- Manager: \`${MANAGER_IMAGE}:${{ steps.meta.outputs.version }}\`" >> $GITHUB_STEP_SUMMARY
7978 echo "- Worker: \`${WORKER_IMAGE}:${{ steps.meta.outputs.version }}\`" >> $GITHUB_STEP_SUMMARY
79+ echo "- Base: \`${OPENCLAW_BASE_IMAGE}:latest\` (pre-built, not rebuilt here)" >> $GITHUB_STEP_SUMMARY
8080 echo "- Platforms: \`linux/amd64, linux/arm64\`" >> $GITHUB_STEP_SUMMARY
Original file line number Diff line number Diff line change @@ -82,7 +82,7 @@ all: build
8282
8383# ---------- Build ----------
8484
85- build : build-openclaw-base build- manager build-worker # # Build all images
85+ build : build-manager build-worker # # Build all images (base image pulled from registry, not rebuilt locally)
8686
8787build-openclaw-base : # # Build OpenClaw base image
8888 @echo " ==> Building OpenClaw base image: $( LOCAL_OPENCLAW_BASE) (registry: $( HIGRESS_REGISTRY) )"
@@ -91,8 +91,10 @@ build-openclaw-base: ## Build OpenClaw base image
9191 ./openclaw-base/
9292
9393# build targets use the locally-built openclaw-base; push targets use the registry image
94- OPENCLAW_BASE_BUILD_ARG = --build-arg OPENCLAW_BASE_IMAGE=$(LOCAL_OPENCLAW_BASE )
95- OPENCLAW_BASE_PUSH_ARG = --build-arg OPENCLAW_BASE_IMAGE=$(OPENCLAW_BASE_TAG )
94+ # Both build and push targets use the registry :latest base image for layer sharing
95+ OPENCLAW_BASE_BUILD_ARG = --build-arg OPENCLAW_BASE_IMAGE=$(OPENCLAW_BASE_IMAGE ) :latest
96+ # push targets always use :latest so manager/worker layers are shared across releases
97+ OPENCLAW_BASE_PUSH_ARG = --build-arg OPENCLAW_BASE_IMAGE=$(OPENCLAW_BASE_IMAGE ) :latest
9698
9799build-manager : # # Build Manager image
98100 @echo " ==> Building Manager image: $( LOCAL_MANAGER) (registry: $( HIGRESS_REGISTRY) )"
141143 fi
142144endif
143145
144- push : push-openclaw-base push- manager push-worker # # Build + push multi-arch images (amd64 + arm64)
146+ push : push-manager push-worker # # Build + push multi-arch images (amd64 + arm64); base image built separately via build-base.yml
145147
146148push-openclaw-base : buildx-setup # # Build + push multi-arch OpenClaw base image
147149 @echo " ==> Building + pushing multi-arch OpenClaw base: $( OPENCLAW_BASE_TAG) [$( MULTIARCH_PLATFORMS) ]"
You can’t perform that action at this time.
0 commit comments