Skip to content

build: update infrastructure to use the uv tool #822

build: update infrastructure to use the uv tool

build: update infrastructure to use the uv tool #822

Workflow file for this run

name: Daily CI
on:
schedule:
- cron: '0 4 * * *'
workflow_dispatch:
# COMMENTED OUT: only for testing CI action changes.
# It only works for PRs to `main` branch from branches in the same gt4py repo.
pull_request:
branches:
- main
# END
jobs:
daily-ci:
strategy:
matrix:
dependencies-factor: ["lowest-direct", "highest"]
module-factor: ["cartesian", "eve", "next", "storage"]
os: ["ubuntu-latest"] #, "macos-latest"]
python-version: ["3.10", "3.11"]
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- name: Get current date
id: date
run: |
echo "{day_of_the_week}={$(date +'%u')}" >> $GITHUB_STATE
- name: Weekly notification
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
uses: slackapi/[email protected]
with:
channel-id: ${{ vars.SLACK_BOT_CHANNEL_TEST }}
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "Weekly reminder to check the latest runs of the <https://github.com/GridTools/gt4py/actions/workflows/daily-ci.yml|GT4Py Daily CI> workflow at the <https://github.com/GridTools/gt4py/actions/|GitHub Actions dashboard>."
}
}
]
}
- name: Test with environment variables
if: ${{ env.day_of_the_week == '3' }}
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
uses: slackapi/[email protected]
with:
channel-id: ${{ vars.SLACK_BOT_CHANNEL_TEST }}
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "if3 Weekly reminder to check the latest runs of the <https://github.com/GridTools/gt4py/actions/workflows/daily-ci.yml|GT4Py Daily CI> workflow at the <https://github.com/GridTools/gt4py/actions/|GitHub Actions dashboard>."
}
}
]
}
- name: Test not
if: ${{ env.day_of_the_week != '3' }}
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
uses: slackapi/[email protected]
with:
channel-id: ${{ vars.SLACK_BOT_CHANNEL_TEST }}
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "ifnot3 Weekly reminder to check the latest runs of the <https://github.com/GridTools/gt4py/actions/workflows/daily-ci.yml|GT4Py Daily CI> workflow at the <https://github.com/GridTools/gt4py/actions/|GitHub Actions dashboard>."
}
}
]
}
# - uses: actions/checkout@v4
# - name: Install C++ libraries
# if: ${{ matrix.os == 'macos-latest' }}
# shell: bash
# run: brew install boost
# - name: Install C++ libraries
# if: ${{ matrix.os == 'ubuntu-latest' }}
# shell: bash
# run: sudo apt install libboost-dev
# - name: Install uv and set the python version
# uses: astral-sh/setup-uv@v5
# with:
# enable-cache: true
# cache-dependency-glob: "uv.lock"
# python-version: ${{ matrix.python-version }}
# - name: Run CPU tests for '${{ matrix.module-factor }}' with '${{ matrix.dependencies-factor }}' resolution strategy
# env:
# NUM_PROCESSES: auto
# UV_RESOLUTION: ${{ matrix.dependencies-factor }}
# run: uv run nox -s 'test_${{ matrix.module-factor }}-${{ matrix.python-version }}' -t 'cpu'
# - name: Notify slack
# #if: ${{ failure() }}
# env:
# SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
# uses: slackapi/[email protected]
# with:
# channel-id: ${{ vars.SLACK_BOT_CHANNEL_TEST }}
# # payload: |
# # {
# # "text": "${{ github.workflow }}: Daily CI: '**${{ matrix.module-factor }} (CPU)** for **Python-${{ matrix.python-version }}**>: *Failed tests!*"
# # }
# payload: |
# {
# "text": "${{ github.workflow }}: Daily CI: '**${{ matrix.module-factor }} (CPU)** for **Python-${{ matrix.python-version }}**: *Failed tests!*",
# "blocks": [
# {
# "type": "section",
# "text": {
# "type": "mrkdwn",
# "text": "<https://github.com/GridTools/gt4py/actions/runs/${{ github.run_id }}|${{ github.workflow }}: **${{ matrix.module-factor }} (CPU)** for **Python-${{ matrix.python-version }}**>: *Failed tests!*"
# }
# }
# ]
# }