diff --git a/.github/workflows/hourly-ci.yaml b/.github/workflows/hourly-ci.yaml index 2131cc8f..add258ca 100644 --- a/.github/workflows/hourly-ci.yaml +++ b/.github/workflows/hourly-ci.yaml @@ -24,6 +24,7 @@ jobs: contents: read # Required to checkout code and read history outputs: latest_commit: ${{ steps.latest_vllm_commit.outputs.LATEST_COMMIT }} + latest_plugin_commit: ${{ steps.latest_vllm_plugin_commit.outputs.LATEST_PLUGIN_COMMIT }} steps: - name: Checkout repository uses: actions/checkout@v4 @@ -56,11 +57,43 @@ jobs: echo "Looking for commits since: $PREV_RUN_TIME" echo "PREV_RUN_TIME=$PREV_RUN_TIME" >> "$GITHUB_OUTPUT" - - name: List commit differences in the last 4 hours + - name: List vLLM commit differences in the last 4 hours run: | echo "Commits merged/pushed in vllm-project/vllm.git in the last 4 hours:" git log HEAD..vllm-upstream/main --pretty=format:"%h - %an, %ar : %s" --since="${{ steps.prev_run_time.outputs.PREV_RUN_TIME }}" + - name: List vLLM commit differences since last stable run + run: | + LAST_STABLE_VLLM_COMMIT=$(git show origin/vllm/last-good-commit-for-vllm-gaudi:VLLM_STABLE_COMMIT) + if [ $? -ne 0 ]; then + echo "ERROR: No VLLM_STABLE_COMMIT file found in origin/vllm/last-good-commit-for-vllm-gaudi." + exit 1 + fi + LAST_STABLE_VLLM_COMMIT_TITLE=$(git show --no-patch --oneline $LAST_STABLE_VLLM_COMMIT) + if [ $? -ne 0 ]; then + echo "ERROR: VLLM_STABLE_COMMIT contents does not look like a valid vLLM commit" + exit 1 + fi + echo "Last stable vLLM commit: $LAST_STABLE_VLLM_COMMIT_TITLE" + echo "Commits merged/pushed in vllm-project/vllm.git since last stable commit:" + git log $LAST_STABLE_VLLM_COMMIT..vllm-upstream/main --pretty=format:"%h - %an, %ar : %s" + + - name: List vLLM-Gaudi commit differences since last stable run + run: | + LAST_STABLE_VLLM_GAUDI_COMMIT=$(git show origin/vllm/last-good-commit-for-vllm-gaudi:VLLM_GAUDI_STABLE_COMMIT) + if [ $? -ne 0 ]; then + echo "ERROR: No VLLM_GAUDI_STABLE_COMMIT file found in origin/vllm/last-good-commit-for-vllm-gaudi." + exit 1 + fi + LAST_STABLE_VLLM_GAUDI_COMMIT_TITLE=$(git show --no-patch --oneline $LAST_STABLE_VLLM_GAUDI_COMMIT) + if [ $? -ne 0 ]; then + echo "ERROR: VLLM_GAUDI_STABLE_COMMIT contents does not look like a valid vLLM-Gaudi commit" + exit 1 + fi + echo "Last stable vLLM commit: $LAST_STABLE_VLLM_GAUDI_COMMIT_TITLE" + echo "Commits merged/pushed in vllm-project/vllm-gaudi.git since last stable commit:" + git log $LAST_STABLE_VLLM_GAUDI_COMMIT..${{ github.sha }} --pretty=format:"%h - %an, %ar : %s" + - name: Get latest commit sha from vllm-upstream/main id: latest_vllm_commit run: | @@ -69,6 +102,14 @@ jobs: echo "LATEST_COMMIT=$LATEST_COMMIT" >> "$GITHUB_OUTPUT" echo "Latest commit from upstream vLLM: $LATEST_COMMIT" + - name: Get latest commit sha from vllm-gaudi/main + id: latest_vllm_plugin_commit + run: | + # Use the 'vllm-gaudi/main' ref to log latest commit from that remote + LATEST_PLUGIN_COMMIT=${{ github.sha }} + echo "LATEST_PLUGIN_COMMIT=$LATEST_PLUGIN_COMMIT" >> "$GITHUB_OUTPUT" + echo "Latest commit from vLLM-Gaudi plugin: $LATEST_PLUGIN_COMMIT" + - name: Setup Docker environment and build image run: | echo "Attempting to build Docker image..." @@ -267,3 +308,19 @@ jobs: # Explicitly set the remote URL with the token to prevent hanging on auth git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} git push --force origin HEAD:vllm/last-good-commit-for-vllm-gaudi + + + - name: Store last stable vLLM-Gaudi commit sha + run: | + LATEST_PLUGIN_COMMIT_SHA=${{ needs.setup_and_build.outputs.latest_plugin_commit }} + echo "Storing latest stable vLLM commit SHA: $LATEST_PLUGIN_COMMIT_SHA" + echo "$LATEST_PLUGIN_COMMIT_SHA" > VLLM_GAUDI_STABLE_COMMIT + + # Only commit and push if the file has changed to avoid empty commits + git add VLLM_GAUDI_STABLE_COMMIT + git commit --allow-empty -m "Update stable vLLM-Gaudi commit to ${LATEST_PLUGIN_COMMIT_SHA}" + + echo "Pushing changes to remote branch..." + # Explicitly set the remote URL with the token to prevent hanging on auth + git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/${{ github.repository }} + git push --force origin HEAD:vllm/last-good-commit-for-vllm-gaudi