* ci: rework tests to break out ios/android tests Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * Apply suggestions from code review Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Apply suggestions from code review * ci: fix check for wheels Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * Update .github/workflows/test.yml * tests: pass via flag instead of envvar Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * tests: apply to serial/parallel Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * tests: join together marks Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * tests: join together marks Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * ci: break up azure job Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * ci: use matrix for azure pipelines Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> * Try installing Java on macos as well * Revert "Try installing Java on macos as well" This reverts commit aedf0f5106d2467938705b85180a0b249d49b99d. * Try to get the most basic android test running first * Rename platform to test_select, move headers in run_tests Maybe it's a personal thing, but the header location was really making me have to think more than I needed to look at that file! * Only run docker unit tests on machines that are testing linux * Update the flag name in azure-pipelines too * Update azure-pipelines.yml --------- Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Matthieu Darbois <mayeut@users.noreply.github.com> Co-authored-by: Joe Rickerby <joerick@mac.com>
77 lines
2.1 KiB
YAML
77 lines
2.1 KiB
YAML
pr:
|
|
paths:
|
|
exclude:
|
|
- .github/**
|
|
- bin/*
|
|
- docs/**
|
|
- examples/github-*
|
|
- examples/ci*
|
|
- examples/travis-ci-*
|
|
- .ci*
|
|
- .pre-commit-config.yaml
|
|
- .readthedocs.yml
|
|
- .travis.yml
|
|
- README.md
|
|
- mkdocs.yml
|
|
- noxfile.py
|
|
|
|
jobs:
|
|
- job: tests
|
|
strategy:
|
|
matrix:
|
|
linux_311:
|
|
imageName: "ubuntu-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "native"
|
|
android_311:
|
|
imageName: "ubuntu-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "android"
|
|
macos_311:
|
|
imageName: "macos-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "native"
|
|
ios_311:
|
|
imageName: "macos-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "ios"
|
|
android_macos_311:
|
|
imageName: "macos-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "android"
|
|
windows_311:
|
|
imageName: "windows-latest"
|
|
pythonVersion: "3.11"
|
|
testSelect: "native"
|
|
timeoutInMinutes: 180
|
|
pool:
|
|
vmImage: $(imageName)
|
|
|
|
steps:
|
|
- task: UsePythonVersion@0
|
|
inputs:
|
|
versionSpec: $(pythonVersion)
|
|
|
|
- task: JavaToolInstaller@0
|
|
condition: and(eq(variables['testSelect'], 'android'), eq(variables['Agent.OS'], 'Linux'))
|
|
inputs:
|
|
versionSpec: '17'
|
|
jdkArchitectureOption: 'x64'
|
|
jdkSourceOption: 'PreInstalled'
|
|
|
|
- bash: docker run --rm --privileged docker.io/tonistiigi/binfmt:latest --install all
|
|
condition: and(eq(variables['imageName'], 'ubuntu-latest'), eq(variables['testSelect'], 'native'))
|
|
displayName: 'Install binfmt on Linux'
|
|
|
|
- bash: python -m pip install -U pip && python -m pip install -e. --group test
|
|
displayName: 'Update pip and install cibuildwheel --group test'
|
|
|
|
- bash: echo "##vso[task.setvariable variable=CIBW_ENABLE;]all"
|
|
condition: eq(variables['Build.SourceBranch'], 'refs/heads/main')
|
|
displayName: Set CIBW_ENABLE to all (main branch)
|
|
|
|
- bash: |
|
|
echo "CIBW_ENABLE = $CIBW_ENABLE"
|
|
python ./bin/run_tests.py --test-select $(testSelect)
|
|
displayName: 'Run tests'
|