From 0784c6083bf858c07c574faa585ba6ce12f4b792 Mon Sep 17 00:00:00 2001 From: michael Date: Wed, 3 Dec 2025 19:26:50 -0600 Subject: [PATCH] Add ROCm latest tags to AMD Docker release workflow This adds a new job 'create-rocm-latest-tags' that runs after the 'publish' job and creates floating 'latest' tags for ROCm images: - lmsysorg/sglang:rocm-latest (points to rocm700-mi30x) - lmsysorg/sglang:rocm630-mi30x-latest - lmsysorg/sglang:rocm700-mi30x-latest - lmsysorg/sglang:rocm700-mi35x-latest This allows users to simply run 'docker pull lmsysorg/sglang:rocm-latest' instead of having to look up the specific versioned tag. --- .github/workflows/release-docker-amd.yml | 47 ++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/.github/workflows/release-docker-amd.yml b/.github/workflows/release-docker-amd.yml index 8b4fae51f7ee..d76e131905fd 100644 --- a/.github/workflows/release-docker-amd.yml +++ b/.github/workflows/release-docker-amd.yml @@ -46,3 +46,50 @@ jobs: docker build . -f docker/rocm.Dockerfile --build-arg BUILD_TYPE=${{ matrix.build_type }} --build-arg GPU_ARCH=${{ matrix.gpu_arch }} -t lmsysorg/sglang:${tag} --no-cache docker push lmsysorg/sglang:${tag} + + create-rocm-latest-tags: + runs-on: ubuntu-22.04 + needs: [publish] + if: github.repository == 'sgl-project/sglang' + environment: 'prod' + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v3 + + - name: Login to Docker Hub + uses: docker/login-action@v2 + with: + username: ${{ secrets.DOCKERHUB_USERNAME }} + password: ${{ secrets.DOCKERHUB_TOKEN }} + + - name: Create ROCm latest tags + run: | + version=$(cat python/sglang/version.py | cut -d'"' -f2) + echo "Version: ${version}" + + # Create hardware-specific latest tags + echo "Creating rocm630-mi30x-latest tag..." + docker buildx imagetools create \ + -t lmsysorg/sglang:rocm630-mi30x-latest \ + lmsysorg/sglang:v${version}-rocm630-mi30x + + echo "Creating rocm700-mi30x-latest tag..." + docker buildx imagetools create \ + -t lmsysorg/sglang:rocm700-mi30x-latest \ + lmsysorg/sglang:v${version}-rocm700-mi30x + + echo "Creating rocm700-mi35x-latest tag..." + docker buildx imagetools create \ + -t lmsysorg/sglang:rocm700-mi35x-latest \ + lmsysorg/sglang:v${version}-rocm700-mi35x + + # Create generic rocm-latest pointing to the recommended variant (mi30x with rocm700) + echo "Creating rocm-latest tag (pointing to rocm700-mi30x)..." + docker buildx imagetools create \ + -t lmsysorg/sglang:rocm-latest \ + lmsysorg/sglang:v${version}-rocm700-mi30x + + echo "All ROCm latest tags created successfully!"