From 6d186930550c034e8e528ee06148781b3460bb83 Mon Sep 17 00:00:00 2001 From: sd109 Date: Thu, 13 Feb 2025 22:04:10 +0000 Subject: [PATCH] Fix CPU image build workflow --- .github/workflows/build-push-vllm-cpu.yml | 71 +++++++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 .github/workflows/build-push-vllm-cpu.yml diff --git a/.github/workflows/build-push-vllm-cpu.yml b/.github/workflows/build-push-vllm-cpu.yml new file mode 100644 index 0000000..6836d30 --- /dev/null +++ b/.github/workflows/build-push-vllm-cpu.yml @@ -0,0 +1,71 @@ +name: Publish vLLM CPU images + +on: + # NOTE(sd109): Since this is checking out an external + # it's probably safer to leave this as workflow dispatch + # only so that we can manually build images from specific + # refs rather than automatically pulling in the latest + # content from the remote repo. + workflow_dispatch: + inputs: + vllm_ref: + type: string + description: The vLLM GitHub ref (tag, branch or commit) to build. + required: true + +jobs: + build_push_x86_image: + name: Build and push image + runs-on: ubuntu-latest + permissions: + contents: read + id-token: write # needed for signing the images with GitHub OIDC Token + packages: write # required for pushing container images + security-events: write # required for pushing SARIF files + steps: + - name: Check out the vLLM repository + uses: actions/checkout@v4 + with: + repository: vllm-project/vllm + ref: ${{ inputs.vllm_ref }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push image + run: | + IMAGE=ghcr.io/stackhpc/vllm-cpu:${{ inputs.vllm_ref }} + docker build -f Dockerfile.cpu -t $IMAGE --shm-size=4g . + docker push $IMAGE + + build_push_arm64_image: + name: Build and push image + runs-on: ubuntu-24.04-arm + permissions: + contents: read + id-token: write # needed for signing the images with GitHub OIDC Token + packages: write # required for pushing container images + security-events: write # required for pushing SARIF files + steps: + - name: Check out the vLLM repository + uses: actions/checkout@v4 + with: + repository: vllm-project/vllm + ref: ${{ inputs.vllm_ref }} + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - name: Build and push image + run: | + IMAGE=ghcr.io/stackhpc/vllm-cpu:${{ inputs.vllm_ref }}-arm64 + docker build -f Dockerfile.arm -t $IMAGE --shm-size=4g . + docker push $IMAGE