@@ -6,75 +6,17 @@ trigger:
6
6
- dev
7
7
8
8
variables :
9
- DOTNET_VERSION : ' 3.1.405'
10
- DOTNET_VERSION_5 : ' 5.0.x'
11
- DOTNET_VERSION_6 : ' 6.x'
12
9
patchBuildNumberForDev : $(Build.BuildNumber)
13
- PROD_V3_WORKER_PY : ' python/prodV3/worker.py'
14
10
PROD_V4_WORKER_PY : ' python/prodV4/worker.py'
15
11
16
12
jobs :
17
- - job : Tests
18
- pool :
19
- name : ' 1ES-Hosted-AzFunc' # MMS2019TLS for Windows2019 or MMSUbuntu20.04TLS for ubuntu
20
- demands :
21
- - ImageOverride -equals MMSUbuntu20.04TLS
22
- strategy :
23
- matrix :
24
- Python37 :
25
- pythonVersion : ' 3.7'
26
- Python38 :
27
- pythonVersion : ' 3.8'
28
- Python39 :
29
- pythonVersion : ' 3.9'
30
- Python310 :
31
- pythonVersion : ' 3.10'
32
- steps :
33
- - task : UsePythonVersion@0
34
- inputs :
35
- versionSpec : ' $(pythonVersion)'
36
- addToPath : true
37
- - task : UseDotNet@2
38
- displayName : ' Install dotnet'
39
- inputs :
40
- packageType : ' sdk'
41
- version : $(DOTNET_VERSION)
42
- - task : UseDotNet@2
43
- displayName : ' Install DotNet 5.x'
44
- inputs :
45
- packageType : ' sdk'
46
- version : $(DOTNET_VERSION_5)
47
- - task : UseDotNet@2
48
- displayName : ' Install DotNet 6.x'
49
- inputs :
50
- packageType : ' sdk'
51
- version : $(DOTNET_VERSION_6)
52
- - task : ShellScript@2
53
- inputs :
54
- disableAutoCwd : true
55
- scriptPath : .ci/linux_devops_build.sh
56
- displayName : ' Build'
57
-
58
13
- job : Build_WINDOWS_X64
59
- dependsOn : ' Tests'
60
14
pool :
61
15
name : ' 1ES-Hosted-AzFunc' # MMS2019TLS for Windows2019 or MMSUbuntu20.04TLS for ubuntu
62
16
demands :
63
17
- ImageOverride -equals MMS2019TLS
64
18
strategy :
65
19
matrix :
66
- Python36V3 :
67
- pythonVersion : ' 3.6'
68
- workerPath : $(PROD_V3_WORKER_PY)
69
- Python37V3 :
70
- pythonVersion : ' 3.7'
71
- workerPath : $(PROD_V3_WORKER_PY)
72
- Python38V3 :
73
- pythonVersion : ' 3.8'
74
- workerPath : $(PROD_V3_WORKER_PY)
75
- Python39V3 :
76
- pythonVersion : ' 3.9'
77
- workerPath : $(PROD_V3_WORKER_PY)
78
20
Python37V4 :
79
21
pythonVersion : ' 3.7'
80
22
workerPath : $(PROD_V4_WORKER_PY)
84
26
Python39V4 :
85
27
pythonVersion : ' 3.9'
86
28
workerPath : $(PROD_V4_WORKER_PY)
29
+ Python310V4 :
30
+ pythonVersion : ' 3.10'
31
+ workerPath : $(PROD_V4_WORKER_PY)
87
32
steps :
88
33
- template : pack/templates/win_env_gen.yml
89
34
parameters :
@@ -92,22 +37,12 @@ jobs:
92
37
architecture : ' x64'
93
38
artifactName : ' $(pythonVersion)_WINDOWS_X64'
94
39
- job : Build_WINDOWS_X86
95
- dependsOn : ' Tests'
96
40
pool :
97
41
name : ' 1ES-Hosted-AzFunc' # MMS2019TLS for Windows2019 or MMSUbuntu20.04TLS for ubuntu
98
42
demands :
99
43
- ImageOverride -equals MMS2019TLS
100
44
strategy :
101
45
matrix :
102
- Python37V3 :
103
- pythonVersion : ' 3.7'
104
- workerPath : $(PROD_V3_WORKER_PY)
105
- Python38V3 :
106
- pythonVersion : ' 3.8'
107
- workerPath : $(PROD_V3_WORKER_PY)
108
- Python39V3 :
109
- pythonVersion : ' 3.9'
110
- workerPath : $(PROD_V3_WORKER_PY)
111
46
Python37V4 :
112
47
pythonVersion : ' 3.7'
113
48
workerPath : $(PROD_V4_WORKER_PY)
117
52
Python39V4 :
118
53
pythonVersion : ' 3.9'
119
54
workerPath : $(PROD_V4_WORKER_PY)
55
+ Python310V4 :
56
+ pythonVersion : ' 3.10'
57
+ workerPath : $(PROD_V4_WORKER_PY)
120
58
steps :
121
59
- template : pack/templates/win_env_gen.yml
122
60
parameters :
@@ -125,25 +63,12 @@ jobs:
125
63
architecture : ' x86'
126
64
artifactName : ' $(pythonVersion)_WINDOWS_x86'
127
65
- job : Build_LINUX_X64
128
- dependsOn : ' Tests'
129
66
pool :
130
67
name : ' 1ES-Hosted-AzFunc' # MMS2019TLS for Windows2019 or MMSUbuntu20.04TLS for ubuntu
131
68
demands :
132
69
- ImageOverride -equals MMSUbuntu20.04TLS
133
70
strategy :
134
71
matrix :
135
- Python36V3 :
136
- pythonVersion : ' 3.6'
137
- workerPath : $(PROD_V3_WORKER_PY)
138
- Python37V3 :
139
- pythonVersion : ' 3.7'
140
- workerPath : $(PROD_V3_WORKER_PY)
141
- Python38V3 :
142
- pythonVersion : ' 3.8'
143
- workerPath : $(PROD_V3_WORKER_PY)
144
- Python39V3 :
145
- pythonVersion : ' 3.9'
146
- workerPath : $(PROD_V3_WORKER_PY)
147
72
Python37V4 :
148
73
pythonVersion : ' 3.7'
149
74
workerPath : $(PROD_V4_WORKER_PY)
@@ -153,30 +78,20 @@ jobs:
153
78
Python39V4 :
154
79
pythonVersion : ' 3.9'
155
80
workerPath : $(PROD_V4_WORKER_PY)
81
+ Python310V4 :
82
+ pythonVersion : ' 3.10'
83
+ workerPath : $(PROD_V4_WORKER_PY)
156
84
steps :
157
85
- template : pack/templates/nix_env_gen.yml
158
86
parameters :
159
87
pythonVersion : ' $(pythonVersion)'
160
88
workerPath : ' $(workerPath)'
161
89
artifactName : ' $(pythonVersion)_LINUX_X64'
162
90
- job : Build_OSX_X64
163
- dependsOn : ' Tests'
164
91
pool :
165
92
vmImage : ' macOS-10.15'
166
93
strategy :
167
94
matrix :
168
- Python36V3 :
169
- pythonVersion : ' 3.6'
170
- workerPath : $(PROD_V3_WORKER_PY)
171
- Python37V3 :
172
- pythonVersion : ' 3.7'
173
- workerPath : $(PROD_V3_WORKER_PY)
174
- Python38V3 :
175
- pythonVersion : ' 3.8'
176
- workerPath : $(PROD_V3_WORKER_PY)
177
- Python39V3 :
178
- pythonVersion : ' 3.9'
179
- workerPath : $(PROD_V3_WORKER_PY)
180
95
Python37V4 :
181
96
pythonVersion : ' 3.7'
182
97
workerPath : $(PROD_V4_WORKER_PY)
@@ -186,6 +101,9 @@ jobs:
186
101
Python39V4 :
187
102
pythonVersion : ' 3.9'
188
103
workerPath : $(PROD_V4_WORKER_PY)
104
+ Python310V4 :
105
+ pythonVersion : ' 3.10'
106
+ workerPath : $(PROD_V4_WORKER_PY)
189
107
steps :
190
108
- template : pack/templates/nix_env_gen.yml
191
109
parameters :
@@ -197,21 +115,15 @@ jobs:
197
115
dependsOn : ['Build_WINDOWS_X64', 'Build_WINDOWS_X86', 'Build_LINUX_X64', 'Build_OSX_X64']
198
116
condition : or(startsWith(variables['Build.SourceBranch'], 'refs/heads/release/'), eq(variables['Build.SourceBranch'], 'refs/heads/dev'))
199
117
pool :
200
- # vmImage: 'vs2017-win2016'
201
- name : ' 1ES-Hosted-AzFunc' # MMS2019TLS for Windows2019 or MMSUbuntu20.04TLS for ubuntu
118
+ name : ' 1ES-Hosted-AzFunc'
202
119
demands :
203
- - ImageOverride -equals MMSUbuntu20.04TLS
120
+ - ImageOverride -equals MMS2019TLS
204
121
steps :
205
122
- bash : |
206
123
echo "Releasing from $BUILD_SOURCEBRANCHNAME"
207
- apt install jq
124
+ sudo apt-get install -y jq
208
125
209
- if [[ $BUILD_SOURCEBRANCHNAME = 3\.* ]]
210
- then
211
- echo "Generating V3 Release Package for $BUILD_SOURCEBRANCHNAME"
212
- NUSPEC="pack\Microsoft.Azure.Functions.V3.PythonWorker.nuspec"
213
- WKVERSION="$BUILD_SOURCEBRANCHNAME"
214
- elif [[ $BUILD_SOURCEBRANCHNAME = 4\.* ]]
126
+ if [[ $BUILD_SOURCEBRANCHNAME = 4\.* ]]
215
127
then
216
128
echo "Generating V4 Release Package for $BUILD_SOURCEBRANCHNAME"
217
129
NUSPEC="pack\Microsoft.Azure.Functions.V4.PythonWorker.nuspec"
@@ -226,7 +138,7 @@ jobs:
226
138
# this is only to test nuget related workflow because we are setting nuspec here
227
139
echo "Generating Integration Test Package for $BUILD_SOURCEBRANCHNAME for testing purpose"
228
140
LATEST_TAG=$(curl https://api.github.com/repos/Azure/azure-functions-python-worker/tags -s | jq '.[0].name' | sed 's/\"//g' | cut -d'.' -f-2)
229
- NUSPEC="pack\Microsoft.Azure.Functions.V3 .PythonWorker.nuspec"
141
+ NUSPEC="pack\Microsoft.Azure.Functions.V4 .PythonWorker.nuspec"
230
142
# Only required for Integration Test. Version number contains date (e.g. 3.1.2.20211028-dev)
231
143
WKVERSION="3.$LATEST_TAG-$(BUILD_BUILDID)-TEST"
232
144
echo "No Matching Release Tag For $BUILD_SOURCEBRANCH"
0 commit comments