forked from scikit-learn/scikit-learn
-
Notifications
You must be signed in to change notification settings - Fork 0
/
posix-docker.yml
92 lines (90 loc) · 2.87 KB
/
posix-docker.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
parameters:
name: ''
vmImage: ''
matrix: []
dependsOn: []
condition: ne(variables['Build.Reason'], 'Schedule')
jobs:
- job: ${{ parameters.name }}
dependsOn: ${{ parameters.dependsOn }}
condition: ${{ parameters.condition }}
pool:
vmImage: ${{ parameters.vmImage }}
variables:
TEST_DIR: '$(Agent.WorkFolder)/tmp_folder'
JUNITXML: 'test-data.xml'
OMP_NUM_THREADS: '2'
OPENBLAS_NUM_THREADS: '2'
CPU_COUNT: '2'
SKLEARN_SKIP_NETWORK_TESTS: '1'
NUMPY_VERSION: 'latest'
SCIPY_VERSION: 'latest'
CYTHON_VERSION: 'latest'
JOBLIB_VERSION: 'latest'
PANDAS_VERSION: 'latest'
PYAMG_VERSION: 'latest'
PILLOW_VERSION: 'latest'
MATPLOTLIB_VERSION: 'latest'
PYTEST_VERSION: 'latest'
PYTEST_XDIST_VERSION: 'latest'
THREADPOOLCTL_VERSION: 'latest'
COVERAGE: 'false'
TEST_DOCSTRINGS: 'false'
BLAS: 'openblas'
# Set in azure-pipelines.yml
DISTRIB: ''
DOCKER_CONTAINER: ''
SHOW_SHORT_SUMMARY: 'false'
strategy:
matrix:
${{ insert }}: ${{ parameters.matrix }}
steps:
# Container is detached and sleeping, allowing steps to run commands
# in the container. The TEST_DIR is mapped allowing the host to access
# the JUNITXML file
- script: >
docker container run --rm
--volume $TEST_DIR:/temp_dir
--volume $PWD:/io
-w /io
--detach
--name skcontainer
-e DISTRIB=$DISTRIB
-e TEST_DIR=/temp_dir
-e JUNITXML=$JUNITXML
-e VIRTUALENV=testvenv
-e NUMPY_VERSION=$NUMPY_VERSION
-e SCIPY_VERSION=$SCIPY_VERSION
-e CYTHON_VERSION=$CYTHON_VERSION
-e JOBLIB_VERSION=$JOBLIB_VERSION
-e PANDAS_VERSION=$PANDAS_VERSION
-e PYAMG_VERSION=$PYAMG_VERSION
-e PILLOW_VERSION=$PILLOW_VERSION
-e MATPLOTLIB_VERSION=$MATPLOTLIB_VERSION
-e PYTEST_VERSION=$PYTEST_VERSION
-e PYTEST_XDIST_VERSION=$PYTEST_XDIST_VERSION
-e THREADPOOLCTL_VERSION=$THREADPOOLCTL_VERSION
-e OMP_NUM_THREADS=$OMP_NUM_THREADS
-e OPENBLAS_NUM_THREADS=$OPENBLAS_NUM_THREADS
-e SKLEARN_SKIP_NETWORK_TESTS=$SKLEARN_SKIP_NETWORK_TESTS
-e BLAS=$BLAS
-e CPU_COUNT=$CPU_COUNT
$DOCKER_CONTAINER
sleep 1000000
displayName: 'Start container'
- script: >
docker exec skcontainer ./build_tools/azure/install.sh
displayName: 'Install'
- script: >
docker exec skcontainer ./build_tools/azure/test_script.sh
displayName: 'Test Library'
- task: PublishTestResults@2
inputs:
testResultsFiles: '$(TEST_DIR)/$(JUNITXML)'
testRunTitle: ${{ format('{0}-$(Agent.JobName)', parameters.name) }}
displayName: 'Publish Test Results'
condition: succeededOrFailed()
- script: >
docker container stop skcontainer
displayName: 'Stop container'
condition: always()