1
# Copyright (c) ONNX Project Contributors
3
# SPDX-License-Identifier: Apache-2.0
5
# Weekly ci workflow for model zoo.
6
# Runs model checker/shape_inference/version_converter for all models
7
name: Weekly CI with the latest ONNX and ONNX Model Zoo
11
# run weekly on Sunday 23:59
12
- cron: '59 23 * * SUN'
14
branches: [main, rel-*]
17
permissions: # set top-level default permissions as security best practice
21
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name == 'workflow_dispatch' }}
22
cancel-in-progress: true
26
if: github.event_name != 'pull_request' || contains( github.event.pull_request.labels.*.name, 'test ONNX Model Zoo')
29
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
31
- name: Checkout submodules
34
auth_header="$(git config --local --get http.https://github.com/.extraheader)"
35
git submodule sync --recursive
36
git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
38
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5.1.0
40
python-version: '3.10'
41
- name: Install dependencies
45
python -m pip install -q --upgrade pip
46
python -m pip install -q -r requirements-release.txt
48
- name: Build, install and test ONNX
51
# Install protobuf from source
52
export NUM_CORES=`sysctl -n hw.logicalcpu`
53
source workflow_scripts/protobuf/build_protobuf_unix.sh $NUM_CORES $(pwd)/protobuf/protobuf_install
60
- name: Test all models with onnx.checker, onnx.shape_inference, onnx.version_converter
62
python workflow_scripts/test_model_zoo.py