Skip to content

Commit e0b6422

Browse files
committed
conditionally call the channel based template
1 parent 4b75bc2 commit e0b6422

File tree

1 file changed

+42
-41
lines changed

1 file changed

+42
-41
lines changed

Diff for: .pipelines/PowerShell-Docker-Image-Build-Official.yml

+42-41
Original file line numberDiff line numberDiff line change
@@ -4,23 +4,26 @@
44
name: PSDocker-Build-$(Build.BuildId)-s_$(stableReleaseTag)_p_$(previewReleaseTag)_l_$(ltsReleaseTag)$(Rev:_rr)
55
trigger: none
66
parameters:
7-
- name: 'previewReleaseTag'
8-
default: 'v7.4.0-preview.5'
9-
- name: 'ltsReleaseTag'
10-
default: 'v7.2.12'
11-
- name: 'stableReleaseTag'
12-
default: 'v7.3.5'
7+
- name: 'version'
8+
default: '7.4.1'
9+
# - name: 'previewReleaseTag'
10+
# default: 'v7.4.0-preview.5'
11+
# - name: 'ltsReleaseTag'
12+
# default: 'v7.2.12'
13+
# - name: 'stableReleaseTag'
14+
# default: 'v7.3.5'
15+
- name: 'channel'
1316
variables:
1417
- name: POWERSHELL_TELEMETRY_OPTOUT
1518
value: 1
1619
- name: DOCKER_RELEASE
1720
value: true
18-
- name: previewReleaseTag
19-
value: ${{ parameters.previewReleaseTag }}
20-
- name: ltsReleaseTag
21-
value: ${{ parameters.ltsReleaseTag }}
22-
- name: stableReleaseTag
23-
value: ${{ parameters.stableReleaseTag }}
21+
# - name: previewReleaseTag
22+
# value: ${{ parameters.previewReleaseTag }}
23+
# - name: ltsReleaseTag
24+
# value: ${{ parameters.ltsReleaseTag }}
25+
# - name: stableReleaseTag
26+
# value: ${{ parameters.stableReleaseTag }}
2427
- name: previewChannelPath
2528
value: ''
2629
- name: ltsChannelPath
@@ -82,26 +85,21 @@ extends:
8285
type: windows
8386
steps:
8487
- pwsh: |
85-
if (-not (Test-Path $(repoRoot)/.config/tsaoptions.json)) {
86-
Get-ChildItem $(Build.SourcesDirectory) -recurse -ErrorAction SilentlyContinue
87-
throw "tsaoptions.json does not exist under $(repoRoot)/.config"
88-
}
89-
displayName: Test if tsaoptions.json exists
90-
- pwsh: |
91-
if ($env:PREVIEWRELEASETAG -notmatch '^v\d+\.\d+\.\d+-(preview|rc)\.\d+$') {
92-
throw "preview release tag is not for a preview build: '${env:PREVIEWRELEASETAG}'"
88+
if ($env:CHANNEL -eq "preview")
89+
{
90+
if ($env:VERSION -notmatch '^\d+\.\d+\.\d+-(preview|rc)\.\d+$') {
91+
throw "${env:CHANNEL} release tag is not for a preview build: '${env:VERSION}'"
92+
}
9393
}
94-
displayName: stop build if preview release tag does not match preview format
95-
- pwsh: |
96-
if ($env:STABLERELEASETAG -notmatch '^v\d+\.\d+\.\d+$') {
97-
throw "stable release tag is not for a stable build: '${env:STABLERELEASETAG}'"
94+
elseif (($env:CHANNEL -eq "stable") -or ($env:CHANNEL -eq "lts")) {
95+
if ($env:VERSION -notmatch '^\d+\.\d+\.\d+$') {
96+
throw "${env:CHANNEL} release tag is not for a stable build: '${env:VERSION}'"
97+
}
9898
}
99-
displayName: stop build if stable release tag does not match stable format
100-
- pwsh: |
101-
if ($env:LTSRELEASETAG -notmatch '^v\d+\.\d+\.\d+$') {
102-
throw "LTS release tag is not for a stable build: '${env:LTSRELEASETAG}'"
99+
else {
100+
throw "${env:CHANNEL} is not a supported channel type"
103101
}
104-
displayName: stop build if LTS release tag does not match stable format
102+
displayName: stop build if channel or version is not valid
105103
- pwsh: |
106104
$toolsFolderPath = Join-Path -Path $(repoRoot) -ChildPath 'tools'
107105
$buildHelperFolderPath = Join-Path -Path $toolsFolderPath -ChildPath 'buildHelper'
@@ -135,15 +133,18 @@ extends:
135133
- pwsh: |
136134
Get-ChildItem env: | Out-String -Width 1000
137135
displayName: 'Capture Environment'
138-
- template: /.vsts-ci/stableReleaseStage.yml@self
139-
parameters:
140-
channel: stable
141-
channelPath: 'release/7-4'
142-
# - template: /.vsts-ci/previewReleaseStage.yml@self
143-
# parameters:
144-
# channel: preview
145-
# channelPath: 'release/7-5'
146-
# - template: /.vsts-ci/ltsReleaseStage.yml@self
147-
# parameters:
148-
# channel: lts
149-
# channelPath: 'release/7-2'
136+
- ${{ if eq(parameters.channel, 'stable') }}:
137+
- template: /.vsts-ci/stableReleaseStage.yml@self
138+
parameters:
139+
channel: ${{ parameters.channel }}
140+
channelPath: 'release/7-4'
141+
- ${{ elseif eq(parameters.channel, 'preview')}}:
142+
- template: /.vsts-ci/previewReleaseStage.yml@self
143+
parameters:
144+
channel: preview
145+
channelPath: 'release/7-5'
146+
- ${{ elseif eq(parameters.channel, 'lts')}}:
147+
- template: /.vsts-ci/ltsReleaseStage.yml@self
148+
parameters:
149+
channel: lts
150+
channelPath: 'release/7-2'

0 commit comments

Comments
 (0)