Skip to content

daily

daily #26

Workflow file for this run

# Daily testing workflow
#
# This script is designed to be triggered on the provided cron time,
# and it can be manually triggered. The purposes of this script include:
#
# - running all unit tests against all operators for correctness verification;
# - running all performance tests (benchmarks) against all operators to
# validate if there are performance regress;
# - running all SVT tests where selected models are launched for E2E tests.
#
# TODO(Qiming): Enable daily tests for benchmark and all backends
name: daily
permissions:
contents: read
on:
workflow_dispatch:
schedule:
# Note that the time is in UTC, so we want this to start at 00:03+8:00
- cron: '3 16 * * *'
jobs:
prepare:
runs-on: ubuntu-latest
outputs:
datetime: ${{ steps.get-date.outputs.CURRENT_DATE }}
steps:
- id: get-date
shell: bash
run: |
echo "CURRENT_DATE=$(date +'%Y%m%d')" >> "$GITHUB_OUTPUT"
cpp-op:
needs: prepare
uses: ./.github/workflows/cpp-op-test.yaml
python-op:
needs: prepare
concurrency:
group: python-op-${{ needs.prepare.outputs.datetime }}
cancel-in-progress: true
runs-on: jiuding
steps:
- uses: actions/checkout@v6
- run: |
pip install pytest-md-report
- shell: bash
run: tools/gpu_check.sh
- shell: bash
env:
CHANGED_FILES: '__ALL__'
run: |
# Invoke script to run full-range unit tests,
# Use datetime timestamp as the fake PR ID, with optional affix if
# workflow is triggered manually
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
RUN_TAG="${{ needs.prepare.outputs.datetime}}-manual"
else
RUN_TAG="${{ needs.prepare.outputs.datetime}}"
fi
# Save RUN_TAG for next step to use
echo "RUN_TAG=${RUN_TAG}" >> $GITHUB_ENV
bash tools/test-op.sh ${RUN_TAG}
- uses: actions/upload-artifact@v7
with:
name: op-ut-coverage
path: coverage/
examples:
needs: prepare
concurrency:
group: examples-test-${{ needs.prepare.outputs.datetime }}
cancel-in-progress: true
runs-on: jiuding
steps:
- uses: actions/checkout@v6
- shell: bash
run: tools/gpu_check.sh
- shell: bash
env:
CHANGED_FILES: '__ALL__'
run: |
# Invoke script to run full-range example tests,
# Use datetime timestamp as the fake PR ID, with optional affix if
# workflow is triggered manually
if [ "${{ github.event_name }}" == "workflow_dispatch" ]; then
PR_ID="${{ needs.prepare.outputs.datetime}}-manual"
else
PR_ID="${{ needs.prepare.outputs.datetime}}"
fi
bash tools/test-examples.sh ${PR_ID}