This is an automated email from the ASF dual-hosted git repository.

ethanfeng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/celeborn.git


The following commit(s) were added to refs/heads/main by this push:
     new 9e8f9f6b1 [CELEBORN-1900] docker images
9e8f9f6b1 is described below

commit 9e8f9f6b193a94ca6e9467aeda6e7172f588eb70
Author: Björn Boschman <[email protected]>
AuthorDate: Wed Mar 19 15:37:20 2025 +0800

    [CELEBORN-1900] docker images
    
    ### What changes were proposed in this pull request?
    
    build & publish docker images on release
    
    ### Why are the changes needed?
    
    No offical images available
    
    ### Does this PR introduce _any_ user-facing change?
    
    ### How was this patch tested?
    
    I wish I could - but I cannot push against a non existing docker repo :)
    
    Closes #3152 from jesusch/CELEBORN-1900-docker-images.
    
    Authored-by: Björn Boschman <[email protected]>
    Signed-off-by: mingji <[email protected]>
---
 .github/workflows/docker-build.yml | 41 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/.github/workflows/docker-build.yml 
b/.github/workflows/docker-build.yml
new file mode 100644
index 000000000..33d0c75d6
--- /dev/null
+++ b/.github/workflows/docker-build.yml
@@ -0,0 +1,41 @@
+name: Build and Push Celeborn Docker Images
+
+on:
+  release:
+    types: [published]
+  workflow_dispatch:
+    inputs:
+      celeborn_version:
+        description: 'Celeborn version (e.g., 0.3.0)'
+        required: false # Making it optional for release triggers
+        type: string
+
+jobs:
+  build:
+    runs-on: ubuntu-latest
+
+    steps:
+      - name: Set Celeborn Version
+        id: set_version
+        run: |
+          if [[ "${{ github.event_name }}" == "release" ]]; then
+            VERSION="${{ github.event.release.tag_name }}"
+            echo "VERSION=${VERSION#v}" >> $GITHUB_OUTPUT
+          else
+            VERSION="${{ github.event.inputs.celeborn_version }}"
+            echo "VERSION=${VERSION}" >> $GITHUB_OUTPUT
+          fi
+
+      - name: Download Celeborn Release
+        run: |
+          VERSION="${{ steps.extract_version.outputs.VERSION }}"
+          wget 
https://downloads.apache.org/celeborn/celeborn-${VERSION}/apache-celeborn-${VERSION}-bin.tgz
+          tar -xzf apache-celeborn-${VERSION}-bin.tgz
+
+      - name: Build and Push
+        run: |
+          VERSION="${{ steps.extract_version.outputs.VERSION }}"
+          cd apache-celeborn-${VERSION}-bin
+          docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ 
secrets.DOCKER_PASSWORD }}
+          docker buildx create --use
+          docker buildx build -f docker/Dockerfile 
--platform=linux/amd64,linux/arm64 -t apache/celeborn:${VERSION} .

Reply via email to