Platform Tests #886
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: Platform Tests | |
on: | |
schedule: | |
- cron: '59 07 * * *' # UTC 7:59(23:59 PST Winter Time) everyday | |
workflow_dispatch: | |
inputs: | |
repository: | |
description: 'The repository from which the slash command was dispatched' | |
required: true | |
comment-id: | |
description: 'The comment-id of the slash command' | |
required: true | |
pr-sha: | |
description: 'The pr-sha of which the slash command was dispatched' | |
required: true | |
branch_or_pr_number: | |
description: 'dummy parameter to allow benchmark workflow to run' | |
required: false | |
fork_info: | |
description: 'Get info of forked repository and branch' | |
required: false | |
jobs: | |
setup: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Create URL to the run output | |
if: (github.event_name == 'workflow_dispatch') | |
id: vars | |
run: echo ::set-output name=run-url::https://github.com/$GITHUB_REPOSITORY/actions/runs/$GITHUB_RUN_ID | |
- name: Create comment | |
if: (github.event_name == 'workflow_dispatch') | |
uses: peter-evans/create-or-update-comment@v1 | |
with: | |
token: ${{ secrets.PAT }} | |
repository: ${{ github.event.inputs.repository }} | |
comment-id: ${{ github.event.inputs.comment-id }} | |
body: | | |
[Platform Tests Output][1] | |
[1]: ${{ steps.vars.outputs.run-url }} | |
common: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: unit-test | |
shell: bash -l {0} | |
run: | | |
chmod +x ./.github/workflow_scripts/test_common.sh && ./.github/workflow_scripts/test_common.sh | |
core: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: unit-test | |
shell: bash -l {0} | |
run: | | |
chmod +x ./.github/workflow_scripts/test_core.sh && ./.github/workflow_scripts/test_core.sh | |
features: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: unit-test | |
shell: bash -l {0} | |
run: | | |
chmod +x ./.github/workflow_scripts/test_features.sh && ./.github/workflow_scripts/test_features.sh | |
# eda: | |
# needs: setup | |
# runs-on: ${{ matrix.os }} | |
# defaults: | |
# run: | |
# shell: bash | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# os: [macos-latest, windows-latest, ubuntu-latest] | |
# python: ["3.8", "3.9", "3.10", "3.11"] | |
# steps: | |
# - name: Checkout repository for PR | |
# if: (github.event_name == 'workflow_dispatch') | |
# uses: actions/checkout@v2 | |
# with: | |
# ref: ${{ github.event.inputs.pr-sha }} | |
# - name: Checkout repository for nightly test | |
# if: (github.event_name == 'schedule') | |
# uses: actions/checkout@v2 | |
# - name: Setup Miniconda | |
# uses: conda-incubator/setup-miniconda@v2.0.0 | |
# with: | |
# activate-environment: autogluon_py3 | |
# environment-file: .github/workflows_env/unittest_env.yml | |
# auto-update-conda: true | |
# python-version: ${{ matrix.python }} | |
# - name: unit-test | |
# shell: bash -l {0} | |
# run: | | |
# chmod +x ./.github/workflow_scripts/test_eda.sh && ./.github/workflow_scripts/test_eda.sh | |
tabular: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 90 | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: Setup OMP | |
if: matrix.os == 'macos-latest' | |
shell: bash -l {0} | |
run: | | |
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/fb8323f2b170bd4ae97e1bac9bf3e2983af3fdb0/Formula/libomp.rb | |
brew unlink libomp | |
brew install libomp.rb | |
rm libomp.rb | |
- name: unit-test | |
shell: bash -l {0} | |
run: | | |
conda install --channel conda-forge pygraphviz | |
chmod +x ./.github/workflow_scripts/test_tabular.sh && ./.github/workflow_scripts/test_tabular.sh "-m not gpu" "true" | |
timeseries: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 90 | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: Setup OMP | |
if: matrix.os == 'macos-latest' | |
shell: bash -l {0} | |
run: | | |
wget https://raw.githubusercontent.com/Homebrew/homebrew-core/fb8323f2b170bd4ae97e1bac9bf3e2983af3fdb0/Formula/libomp.rb | |
brew unlink libomp | |
brew install libomp.rb | |
rm libomp.rb | |
- name: unit-test | |
shell: bash -l {0} | |
run: | | |
conda install --channel conda-forge pygraphviz | |
chmod +x ./.github/workflow_scripts/test_timeseries.sh && ./.github/workflow_scripts/test_timeseries.sh "-m not gpu" "true" | |
install: | |
needs: setup | |
runs-on: ${{ matrix.os }} | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [macos-latest, windows-latest, ubuntu-latest] | |
python: ["3.8", "3.9", "3.10", "3.11"] | |
steps: | |
- name: Checkout repository for PR | |
if: (github.event_name == 'workflow_dispatch') | |
uses: actions/checkout@v2 | |
with: | |
ref: ${{ github.event.inputs.pr-sha }} | |
- name: Checkout repository for nightly test | |
if: (github.event_name == 'schedule') | |
uses: actions/checkout@v2 | |
- name: Setup Miniconda | |
uses: conda-incubator/setup-miniconda@v2.0.0 | |
with: | |
activate-environment: autogluon_py3 | |
environment-file: .github/workflows_env/unittest_env.yml | |
auto-update-conda: true | |
python-version: ${{ matrix.python }} | |
- name: unit-test | |
if: matrix.os != 'windows-latest' | |
shell: bash -l {0} | |
run: | | |
chmod +x ./.github/workflow_scripts/test_install.sh && ./.github/workflow_scripts/test_install.sh | |
- name: unit-test on Windows | |
if: matrix.os == 'windows-latest' | |
shell: bash -l {0} | |
run: | | |
chmod +x ./.github/workflow_scripts/test_install_windows.sh && ./.github/workflow_scripts/test_install_windows.sh |