ci: rework tests to break out ios/android tests (#2519)
* 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>
This commit is contained in:
co-authored by
Copilot
Matthieu Darbois
Joe Rickerby
parent
63bdd4f043
commit
cade3864de
+46
-47
@@ -16,62 +16,61 @@ pr:
|
||||
- noxfile.py
|
||||
|
||||
jobs:
|
||||
- job: linux_311
|
||||
- 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: 'ubuntu-latest'}
|
||||
pool:
|
||||
vmImage: $(imageName)
|
||||
|
||||
steps:
|
||||
- task: UsePythonVersion@0
|
||||
inputs:
|
||||
versionSpec: '3.11'
|
||||
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
|
||||
python -m pip install -U pip
|
||||
python -m pip install -e. --group test
|
||||
if [ "$(Build.SourceBranch)" = "refs/heads/main" ]; then
|
||||
echo "INFO: Exporting CIBW_ENABLE=all for main branch test run."
|
||||
export CIBW_ENABLE=all
|
||||
else
|
||||
echo "INFO: CIBW_ENABLE not set for this branch ($(Build.SourceBranch))."
|
||||
fi
|
||||
python ./bin/run_tests.py
|
||||
|
||||
- job: macos_311
|
||||
pool: {vmImage: 'macOS-latest'}
|
||||
timeoutInMinutes: 120
|
||||
steps:
|
||||
- task: UsePythonVersion@0
|
||||
inputs:
|
||||
versionSpec: '3.11'
|
||||
- bash: |
|
||||
python -m pip install -U pip
|
||||
python -m pip install -e. --group test
|
||||
if [ "$(Build.SourceBranch)" = "refs/heads/main" ]; then
|
||||
echo "INFO: Exporting CIBW_ENABLE=all for main branch test run."
|
||||
export CIBW_ENABLE=all
|
||||
else
|
||||
echo "INFO: CIBW_ENABLE not set for this branch ($(Build.SourceBranch))."
|
||||
fi
|
||||
python ./bin/run_tests.py
|
||||
- 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)
|
||||
|
||||
- job: windows_311
|
||||
pool: {vmImage: 'windows-latest'}
|
||||
timeoutInMinutes: 180
|
||||
steps:
|
||||
- task: UsePythonVersion@0
|
||||
inputs:
|
||||
versionSpec: '3.11'
|
||||
- bash: |
|
||||
python -m pip install -U pip
|
||||
python -m pip install -e. --group test
|
||||
if [ "$(Build.SourceBranch)" = "refs/heads/main" ]; then
|
||||
echo "INFO: Exporting CIBW_ENABLE=all for main branch test run."
|
||||
export CIBW_ENABLE=all
|
||||
else
|
||||
echo "INFO: CIBW_ENABLE not set for this branch ($(Build.SourceBranch))."
|
||||
fi
|
||||
python ./bin/run_tests.py
|
||||
echo "CIBW_ENABLE = $CIBW_ENABLE"
|
||||
python ./bin/run_tests.py --test-select $(testSelect)
|
||||
displayName: 'Run tests'
|
||||
|
||||
Reference in New Issue
Block a user