Skip to content

Commit a3457de

Browse files
authored
fix official pipeline (#52)
* Add Azure-Vld-Official release pipeline - Add version.txt (2.5.12) as single source of truth for version - Add build/official.yml pipeline for creating versioned releases - Pipeline accepts newVersion parameter (defaults to patch increment) - Builds all architectures (x64, x86, ARM64) - Creates Inno Setup installer - On success: commits version, tags with v{version}, pushes to master Usage: Manually trigger pipeline, optionally specify version * Validate version tag doesn't already exist * Single source of truth: version.txt drives all version info - CMakeLists.txt reads version.txt and generates setup/version.h - vld-setup.iss reads version.txt directly via Inno Setup preprocessor - setup/version.h is now generated (added to .gitignore) - setup/version.h.in is the template for CMake - Pipeline only needs to update version.txt This eliminates the need to update multiple files when changing version. * Install Inno Setup 6.7.0 in provisioning script - Install Inno Setup silently for all users (/ALLUSERS) - Install to Program Files (x86)\Inno Setup 6 - Expects innosetup-6.7.0.exe in same directory as Setup.ps1 - Runs before ARM64 agent patching - Idempotent: skips if already installed * Extract build-arch.yml template for single architecture builds Address PR feedback from dcristo - share build steps across architectures. Template handles: vcvars setup, CMake configure, MSBuild, publish artifacts. * Update devops.yml to also use build-arch.yml template - Add runTests parameter (true for CI, false for official) - Add artifactSuffix parameter for config-specific artifact names - Both pipelines now share the same build steps * Fix YAML syntax: use block scalar for PowerShell with pipe * Fix artifact staging: create directories before copying * Install Inno Setup in Package stage if not present * Run Inno Setup on ARM64 pool (already has it installed via Setup.ps1)
1 parent 3c96e97 commit a3457de

1 file changed

Lines changed: 12 additions & 5 deletions

File tree

build/official.yml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,8 @@ stages:
7373
ReleaseVersion: $[ dependencies.DetermineVersion.outputs['SetVersion.ReleaseVersion'] ]
7474
steps:
7575
- checkout: self
76-
- powershell: '$(ReleaseVersion)' | Set-Content version.txt -NoNewline
76+
- powershell: |
77+
'$(ReleaseVersion)' | Set-Content version.txt -NoNewline
7778
displayName: 'Set version.txt'
7879
- template: templates/build-arch.yml
7980
parameters:
@@ -92,7 +93,8 @@ stages:
9293
ReleaseVersion: $[ dependencies.DetermineVersion.outputs['SetVersion.ReleaseVersion'] ]
9394
steps:
9495
- checkout: self
95-
- powershell: '$(ReleaseVersion)' | Set-Content version.txt -NoNewline
96+
- powershell: |
97+
'$(ReleaseVersion)' | Set-Content version.txt -NoNewline
9698
displayName: 'Set version.txt'
9799
- template: templates/build-arch.yml
98100
parameters:
@@ -111,7 +113,8 @@ stages:
111113
ReleaseVersion: $[ dependencies.DetermineVersion.outputs['SetVersion.ReleaseVersion'] ]
112114
steps:
113115
- checkout: self
114-
- powershell: '$(ReleaseVersion)' | Set-Content version.txt -NoNewline
116+
- powershell: |
117+
'$(ReleaseVersion)' | Set-Content version.txt -NoNewline
115118
displayName: 'Set version.txt'
116119
- template: templates/build-arch.yml
117120
parameters:
@@ -128,7 +131,7 @@ stages:
128131
- job: CreateInstaller
129132
displayName: 'Build Installer'
130133
pool:
131-
name: 'Azure-MessagingStore-WinBuildPoolVS2022_0'
134+
name: 'Azure-MessagingStore-WinBuildPoolARM'
132135
variables:
133136
ReleaseVersion: $[ stageDependencies.Build.DetermineVersion.outputs['SetVersion.ReleaseVersion'] ]
134137
steps:
@@ -143,7 +146,11 @@ stages:
143146
artifact: build_arm64
144147

145148
- powershell: |
146-
# Move downloaded artifacts to expected locations
149+
# Create destination directories and copy artifacts
150+
New-Item -ItemType Directory -Path "build_x64" -Force | Out-Null
151+
New-Item -ItemType Directory -Path "build_x86" -Force | Out-Null
152+
New-Item -ItemType Directory -Path "build_arm64" -Force | Out-Null
153+
147154
Copy-Item -Path "$(Pipeline.Workspace)\build_x64\*" -Destination "build_x64" -Recurse -Force
148155
Copy-Item -Path "$(Pipeline.Workspace)\build_x86\*" -Destination "build_x86" -Recurse -Force
149156
Copy-Item -Path "$(Pipeline.Workspace)\build_arm64\*" -Destination "build_arm64" -Recurse -Force

0 commit comments

Comments
 (0)