Use multistage
@@ -21,13 +21,15 @@ variables:
- name: versionBuilder
value: '4.4'
- name: versionWheels
- value: '0.10'
+ value: '0.11'
- group: docker
- group: wheels
-jobs:
+stages:
+- stage: 'Test'
+ jobs:
- job: 'Tox'
pool:
vmImage: 'ubuntu-latest'
@@ -40,8 +42,6 @@ jobs:
displayName: 'Install Tox'
- script: tox
displayName: 'Run Tox'
-
-
- job: 'Black'
pool:
vmImage: 'ubuntu-latest'
@@ -54,8 +54,6 @@ jobs:
displayName: 'Install black'
- script: black --check hassio tests
displayName: 'Run Black'
-
-
- job: 'JQ'
pool:
vmImage: 'ubuntu-latest'
@@ -66,8 +64,6 @@ jobs:
shopt -s globstar
cat **/*.json | jq '.'
displayName: 'Run JQ'
-
-
- job: 'Hadolint'
pool:
vmImage: 'ubuntu-latest'
@@ -80,7 +76,8 @@ jobs:
hadolint/hadolint:$(versionHadolint) < Dockerfile
displayName: 'Run Hadolint'
-
+- stage: 'Wheels'
+ jobs:
- job: 'Wheels'
condition: eq(variables['Build.SourceBranchName'], 'dev')
timeoutInMinutes: 360
@@ -131,7 +128,8 @@ jobs:
--remote wheels@$(wheelsHost):/opt/wheels
displayName: 'Run wheels build'
-
+- stage: 'Deploy'
+ jobs:
- job: 'VersionValidate'
condition: or(startsWith(variables['Build.SourceBranch'], 'refs/tags'), eq(variables['Build.SourceBranchName'], 'dev'))
pool:
@@ -152,13 +150,8 @@ jobs:
exit 1
fi
displayName: 'Check version of branch/tag'
-
-
- job: 'Release'
dependsOn:
- - 'JQ'
- - 'Tox'
- - 'Hadolint'
- 'VersionValidate'
pool:
vmImage: 'ubuntu-latest'
