-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathazure-pipelines.yml
More file actions
121 lines (112 loc) · 3.83 KB
/
azure-pipelines.yml
File metadata and controls
121 lines (112 loc) · 3.83 KB
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
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
# https://aka.ms/yaml
stages:
- stage: 'DeployLinux'
dependsOn: []
jobs:
- job: build_linux # name of the deployment job (A-Z, a-z, 0-9, and underscore)
displayName: 'DeployLinuxWithDockcross' # friendly name to display in the UI
timeoutInMinutes: 0
pool: # see the following "Pool" schema
vmImage: 'ubuntu-18.04'
steps:
- task: Bash@3
inputs:
filePath: '$(Build.SourcesDirectory)/deploy/deploy_linux.sh'
workingDirectory: '$(Build.SourcesDirectory)'
- task: PublishPipelineArtifact@1
inputs:
targetPath: '$(Build.SourcesDirectory)/deploy/dist/'
artifactName: 'LinuxWheels'
- stage: 'DeployMacOS'
dependsOn: []
pool:
vmImage: 'macOS-10.15'
variables:
DEPENDENCIES_BUILD_DIR: $(Agent.BuildDirectory)/build_deps
jobs:
- job: build_macos
displayName: 'Build project and deploy'
timeoutInMinutes: 0
strategy:
matrix:
Python37:
python.version: '3.7'
Python38:
python.version: '3.8'
Python39:
python.version: '3.9'
Python310:
python.version: '3.10'
Python311:
python.version: '3.11'
steps:
- task: DownloadPipelineArtifact@2
inputs:
source: 'specific'
project: 'SGEXT'
pipeline: 4
runVersion: 'latest'
artifact: DEPENDENCIES_BUILD_DIR_MACOS
path: $(DEPENDENCIES_BUILD_DIR)
- script: sudo xcode-select -switch /Applications/Xcode_12.3.app
displayName: "Select Xcode version"
- script: xcodebuild -version
displayName: "Xcode version"
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
- task: Bash@3
inputs:
filePath: '$(Build.SourcesDirectory)/deploy/deploy_macos_one_python.sh'
workingDirectory: '$(Build.SourcesDirectory)'
displayName: 'Build project'
- task: PublishPipelineArtifact@1
inputs:
targetPath: '$(Build.SourcesDirectory)/deploy/dist/'
artifactName: 'MacOSWheel$(python.version)'
- stage: 'DeployWindows'
dependsOn: []
pool:
vmImage: 'windows-2019'
variables:
DEPENDENCIES_BUILD_DIR: $(Agent.BuildDirectory)/build_deps
jobs:
- job: build_win
displayName: 'Build project and deploy'
timeoutInMinutes: 0
strategy:
matrix:
Python37:
python.version: '3.7'
Python38:
python.version: '3.8'
Python39:
python.version: '3.9'
Python310:
python.version: '3.10'
Python311:
python.version: '3.11'
steps:
- task: DownloadPipelineArtifact@2
inputs:
source: 'specific'
project: 'SGEXT'
pipeline: 4
runVersion: 'latest'
artifact: DEPENDENCIES_BUILD_DIR_WIN
path: $(DEPENDENCIES_BUILD_DIR)
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
- script: |
call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Auxiliary\Build\vcvars64.bat"
python -m pip install cmake
python -m pip install ninja
python -m pip install -r requirements-deploy.txt
python setup.py bdist_wheel --build-type Release -G Ninja -- -DCMAKE_C_COMPILER="cl.exe" -DCMAKE_CXX_COMPILER="cl.exe" -DSG_BUILD_TESTING:BOOL=OFF -DSG_MODULE_ANALYZE:BOOL=ON -DSG_MODULE_COMPARE:BOOL=ON -DSG_MODULE_LOCATE:BOOL=ON -DSG_MODULE_GENERATE:BOOL=ON -DSG_MODULE_DYNAMICS:BOOL=ON -DSG_MODULE_VISUALIZE:BOOL=ON -DSG_MODULE_VISUALIZE_WITH_QT:BOOL=OFF -DSG_WRAP_PYTHON:BOOL=ON -DDEPENDENCIES_BUILD_DIR:PATH=$(DEPENDENCIES_BUILD_DIR)
workingDirectory: '$(Build.SourcesDirectory)\deploy'
displayName: 'Build project'
- task: PublishPipelineArtifact@1
inputs:
targetPath: $(Build.SourcesDirectory)/deploy/dist
artifactName: 'WindowsWheel$(python.version)'