Skip to content

Bypass data allocation to GPU given precomputed knn in UMAP #3015

Bypass data allocation to GPU given precomputed knn in UMAP

Bypass data allocation to GPU given precomputed knn in UMAP #3015

name: Set PR and Issue Project Fields
on:
pull_request_target:
# This job runs when a PR is first opened, or it is updated
# Only runs if the PR is open (we don't want to update the status of a closed PR)
types: [opened, edited, synchronize]
jobs:
get-project-id:
uses: rapidsai/shared-workflows/.github/workflows/project-get-item-id.yaml@main
if: github.event.pull_request.state == 'open'
secrets: inherit
permissions:
contents: read
with:
PROJECT_ID: "PVT_kwDOAp2shc4AA8lR"
ITEM_NODE_ID: "${{ github.event.pull_request.node_id }}"
update-status:
# This job sets the PR and its linked issues to "In Progress" status
uses: rapidsai/shared-workflows/.github/workflows/project-get-set-single-select-field.yaml@main
if: ${{ github.event.pull_request.state == 'open' && needs.get-project-id.outputs.ITEM_PROJECT_ID != '' }}
needs: get-project-id
with:
PROJECT_ID: "PVT_kwDOAp2shc4AA8lR"
SINGLE_SELECT_FIELD_ID: "PVTSSF_lADOAp2shc4AA8lRzgAftsM"
SINGLE_SELECT_FIELD_NAME: "Status"
SINGLE_SELECT_OPTION_VALUE: "In Progress"
ITEM_PROJECT_ID: "${{ needs.get-project-id.outputs.ITEM_PROJECT_ID }}"
ITEM_NODE_ID: "${{ github.event.pull_request.node_id }}"
UPDATE_ITEM: true
UPDATE_LINKED_ISSUES: true
secrets: inherit
get-release-version:
# Determines the release version based on target branch
# - release/* branches: extract version from branch name (e.g., release/26.02 -> 26.02), always override
# - main branch: read VERSION file, preserve existing values (no override)
# - other branches: skip update
if: ${{ github.event.pull_request.state == 'open' && needs.get-project-id.outputs.ITEM_PROJECT_ID != '' }}
needs: get-project-id
runs-on: ubuntu-latest
outputs:
release-version: ${{ steps.determine-version.outputs.release-version }}
override-item: ${{ steps.determine-version.outputs.override-item }}
steps:
- name: Checkout main branch if needed
if: ${{ github.event.pull_request.base.ref == 'main' }}
uses: actions/checkout@v4
with:
ref: main
- name: Determine release version
id: determine-version
run: |
if [[ "$BASE_BRANCH" == release/* ]]; then
release="${BASE_BRANCH#release/}"
echo "release-version=$release" >> "$GITHUB_OUTPUT"
echo "override-item=true" >> "$GITHUB_OUTPUT"
elif [ "$BASE_BRANCH" = "main" ] && [ -f VERSION ]; then
release=$(head -n 1 VERSION | cut -d. -f1,2)
echo "release-version=$release" >> "$GITHUB_OUTPUT"
echo "override-item=false" >> "$GITHUB_OUTPUT"
fi
env:
BASE_BRANCH: ${{ github.event.pull_request.base.ref }}
update-release:
# This job sets the PR's Release field based on the target branch
# - For release/* branches: always override the field
# - For main branch: only set if not already set (preserve manual values)
uses: rapidsai/shared-workflows/.github/workflows/project-get-set-single-select-field.yaml@main
if: ${{ github.event.pull_request.state == 'open' && needs.get-project-id.outputs.ITEM_PROJECT_ID != '' && needs.get-release-version.outputs.release-version != '' }}
needs: [get-project-id, get-release-version]
with:
PROJECT_ID: "PVT_kwDOAp2shc4AA8lR"
SINGLE_SELECT_FIELD_ID: "PVTSSF_lADOAp2shc4AA8lRzgFqH3Y"
SINGLE_SELECT_FIELD_NAME: "Release"
SINGLE_SELECT_OPTION_VALUE: "${{ needs.get-release-version.outputs.release-version }}"
ITEM_PROJECT_ID: "${{ needs.get-project-id.outputs.ITEM_PROJECT_ID }}"
ITEM_NODE_ID: "${{ github.event.pull_request.node_id }}"
UPDATE_ITEM: true
OVERRIDE_ITEM: ${{ needs.get-release-version.outputs.override-item == 'true' }}
UPDATE_LINKED_ISSUES: false
secrets: inherit