Check for gpuCI updates #3311
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Check for gpuCI updates | |
on: | |
schedule: | |
- cron: "0 0 * * *" # Daily “At 00:00” UTC | |
workflow_dispatch: | |
jobs: | |
update-gpuci: | |
runs-on: ubuntu-latest | |
if: github.repository == 'rapidsai/dask-build-environment' | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Parse build workflow file | |
id: parse_yaml | |
uses: the-coding-turtle/ga-yaml-parser@v0.1.2 | |
with: | |
file: .github/workflows/build.yml | |
export_to_envs: false | |
return_to_outputs: true | |
- name: Fetch RAPIDS/UCX-Py versions from parsed file | |
env: | |
STABLE_RAPIDS_VER: ${{ steps.parse_yaml.outputs.env_STABLE_RAPIDS_VER }} | |
STABLE_UCX_PY_VER: ${{ steps.parse_yaml.outputs.env_STABLE_UCX_PY_VER }} | |
NIGHTLY_RAPIDS_VER: ${{ steps.parse_yaml.outputs.env_NIGHTLY_RAPIDS_VER }} | |
NIGHTLY_UCX_PY_VER: ${{ steps.parse_yaml.outputs.env_NIGHTLY_UCX_PY_VER }} | |
run: | | |
echo STABLE_RAPIDS_VER=$STABLE_RAPIDS_VER >> $GITHUB_ENV | |
echo STABLE_UCX_PY_VER=$STABLE_UCX_PY_VER >> $GITHUB_ENV | |
echo NIGHTLY_RAPIDS_VER=$NIGHTLY_RAPIDS_VER >> $GITHUB_ENV | |
echo NIGHTLY_UCX_PY_VER=$NIGHTLY_UCX_PY_VER >> $GITHUB_ENV | |
- name: Get latest cuDF nightly version | |
id: cudf_latest | |
uses: jacobtomlinson/gha-anaconda-package-version@0.1.3 | |
with: | |
org: "rapidsai-nightly" | |
package: "cudf" | |
version_system: "CalVer" | |
- name: Get latest UCX-Py nightly version | |
id: ucx_py_latest | |
uses: jacobtomlinson/gha-anaconda-package-version@0.1.3 | |
with: | |
org: "rapidsai-nightly" | |
package: "ucx-py" | |
version_system: "CalVer" | |
- name: Strip git tags from versions | |
env: | |
FULL_RAPIDS_VER: ${{ steps.cudf_latest.outputs.version }} | |
FULL_UCX_PY_VER: ${{ steps.ucx_py_latest.outputs.version }} | |
run: | | |
echo "NEW_RAPIDS_VER=$(echo $FULL_RAPIDS_VER | cut -d'.' -f1,2)" >> $GITHUB_ENV | |
echo "NEW_UCX_PY_VER=$(echo $FULL_UCX_PY_VER | cut -d'.' -f1,2)" >> $GITHUB_ENV | |
- name: Update new RAPIDS versions | |
uses: jacobtomlinson/gha-find-replace@v3 | |
with: | |
find: "${{ env.NIGHTLY_RAPIDS_VER }}" | |
replace: "${{ env.NEW_RAPIDS_VER }}" | |
include: ".github/workflows/build.yml" | |
regex: false | |
- name: Update old RAPIDS versions | |
uses: jacobtomlinson/gha-find-replace@v3 | |
with: | |
find: "${{ env.STABLE_RAPIDS_VER }}" | |
replace: "${{ env.NIGHTLY_RAPIDS_VER }}" | |
include: ".github/workflows/build.yml" | |
regex: false | |
- name: Update new UCX-Py versions | |
uses: jacobtomlinson/gha-find-replace@v3 | |
with: | |
find: "${{ env.NIGHTLY_UCX_PY_VER }}" | |
replace: "${{ env.NEW_UCX_PY_VER }}" | |
include: ".github/workflows/build.yml" | |
regex: false | |
- name: Update old UCX-Py versions | |
uses: jacobtomlinson/gha-find-replace@v3 | |
with: | |
find: "${{ env.STABLE_UCX_PY_VER }}" | |
replace: "${{ env.NIGHTLY_UCX_PY_VER }}" | |
include: ".github/workflows/build.yml" | |
regex: false | |
- name: Create pull request | |
if: ${{ env.NIGHTLY_RAPIDS_VER != env.NEW_RAPIDS_VER && env.NIGHTLY_UCX_PY_VER != env.NEW_UCX_PY_VER }} | |
uses: peter-evans/create-pull-request@v6 | |
with: | |
token: ${{ secrets.GITHUB_TOKEN }} | |
commit-message: "Update gpuCI `NIGHTLY_RAPIDS_VER` to `${{ env.NEW_RAPIDS_VER }}`, `NIGHTLY_UCX_PY_VER` to `${{ env.NEW_UCX_PY_VER }}`" | |
title: "Start building images with RAPIDS `${{ env.NEW_RAPIDS_VER }}`, ucx-py `${{ env.NEW_UCX_PY_VER }}`" | |
author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> | |
branch: "upgrade-gpuci-rapids" | |
body: | | |
New cuDF and ucx-py nightly versions have been detected. | |
Updated `.github/workflows/build.yml` to use `NIGHTLY_RAPIDS_VER=${{ env.NEW_RAPIDS_VER }}` and `NIGHTLY_UCX_PY_VER=${{ env.NEW_UCX_PY_VER }}`. |