Skip to content

Commit d3dafbf

Browse files
committed
publish setup for win32-arm64
1 parent 74939c0 commit d3dafbf

4 files changed

Lines changed: 32 additions & 30 deletions

File tree

build/azure-pipelines/win32/product-build-win32-arm64.yml

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -157,24 +157,24 @@ steps:
157157
]
158158
SessionTimeout: 120
159159

160-
# - task: NuGetCommand@2
161-
# displayName: Install ESRPClient.exe
162-
# inputs:
163-
# restoreSolution: 'build\azure-pipelines\win32\ESRPClient\packages.config'
164-
# feedsToUse: config
165-
# nugetConfigPath: 'build\azure-pipelines\win32\ESRPClient\NuGet.config'
166-
# externalFeedCredentials: 3fc0b7f7-da09-4ae7-a9c8-d69824b1819b
167-
# restoreDirectory: packages
168-
169-
# - task: ESRPImportCertTask@1
170-
# displayName: Import ESRP Request Signing Certificate
171-
# inputs:
172-
# ESRP: 'ESRP CodeSign'
173-
174-
# - powershell: |
175-
# $ErrorActionPreference = "Stop"
176-
# .\build\azure-pipelines\win32\import-esrp-auth-cert.ps1 -AuthCertificateBase64 $(esrp-auth-certificate) -AuthCertificateKey $(esrp-auth-certificate-key)
177-
# displayName: Import ESRP Auth Certificate
160+
- task: NuGetCommand@2
161+
displayName: Install ESRPClient.exe
162+
inputs:
163+
restoreSolution: 'build\azure-pipelines\win32\ESRPClient\packages.config'
164+
feedsToUse: config
165+
nugetConfigPath: 'build\azure-pipelines\win32\ESRPClient\NuGet.config'
166+
externalFeedCredentials: 3fc0b7f7-da09-4ae7-a9c8-d69824b1819b
167+
restoreDirectory: packages
168+
169+
- task: ESRPImportCertTask@1
170+
displayName: Import ESRP Request Signing Certificate
171+
inputs:
172+
ESRP: 'ESRP CodeSign'
173+
174+
- powershell: |
175+
$ErrorActionPreference = "Stop"
176+
.\build\azure-pipelines\win32\import-esrp-auth-cert.ps1 -AuthCertificateBase64 $(esrp-auth-certificate) -AuthCertificateKey $(esrp-auth-certificate-key)
177+
displayName: Import ESRP Auth Certificate
178178

179179
- powershell: |
180180
. build/azure-pipelines/win32/exec.ps1

build/azure-pipelines/win32/publish.ps1

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,7 @@ $ErrorActionPreference = "Stop"
33

44
$Arch = "$env:VSCODE_ARCH"
55

6-
if ("$Arch" -eq "arm64") {
7-
exec { yarn gulp "vscode-win32-$Arch-archive" }
8-
} else {
9-
exec { yarn gulp "vscode-win32-$Arch-archive" "vscode-win32-$Arch-system-setup" "vscode-win32-$Arch-user-setup" --sign }
10-
}
6+
exec { yarn gulp "vscode-win32-$Arch-archive" "vscode-win32-$Arch-system-setup" "vscode-win32-$Arch-user-setup" --sign }
117

128
$Repo = "$(pwd)"
139
$Root = "$Repo\.."
@@ -32,9 +28,9 @@ $Version = $PackageJson.version
3228
$AssetPlatform = if ("$Arch" -eq "ia32") { "win32" } else { "win32-$Arch" }
3329

3430
exec { node build/azure-pipelines/common/createAsset.js "$AssetPlatform-archive" archive "VSCode-win32-$Arch-$Version.zip" $Zip }
31+
exec { node build/azure-pipelines/common/createAsset.js "$AssetPlatform" setup "VSCodeSetup-$Arch-$Version.exe" $SystemExe }
32+
exec { node build/azure-pipelines/common/createAsset.js "$AssetPlatform-user" setup "VSCodeUserSetup-$Arch-$Version.exe" $UserExe }
3533

3634
if ("$Arch" -ne "arm64") {
37-
exec { node build/azure-pipelines/common/createAsset.js "$AssetPlatform" setup "VSCodeSetup-$Arch-$Version.exe" $SystemExe }
38-
exec { node build/azure-pipelines/common/createAsset.js "$AssetPlatform-user" setup "VSCodeUserSetup-$Arch-$Version.exe" $UserExe }
3935
exec { node build/azure-pipelines/common/createAsset.js "server-$AssetPlatform" archive "vscode-server-win32-$Arch.zip" $ServerZip }
4036
}

build/gulpfile.vscode.win32.js

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,7 @@ function buildWin32Setup(arch, target) {
6565
return cb => {
6666
const ia32AppId = target === 'system' ? product.win32AppId : product.win32UserAppId;
6767
const x64AppId = target === 'system' ? product.win32x64AppId : product.win32x64UserAppId;
68+
const arm64AppId = target === 'system' ? product.win32arm64AppId : product.win32arm64UserAppId;
6869

6970
const sourcePath = buildPath(arch);
7071
const outputPath = setupDir(arch, target);
@@ -88,12 +89,12 @@ function buildWin32Setup(arch, target) {
8889
ShellNameShort: product.win32ShellNameShort,
8990
AppMutex: product.win32MutexName,
9091
Arch: arch,
91-
AppId: arch === 'ia32' ? ia32AppId : x64AppId,
92-
IncompatibleTargetAppId: arch === 'ia32' ? product.win32AppId : product.win32x64AppId,
93-
IncompatibleArchAppId: arch === 'ia32' ? x64AppId : ia32AppId,
92+
AppId: { 'ia32': ia32AppId, 'x64': x64AppId, 'arm64': arm64AppId }[arch],
93+
IncompatibleTargetAppId: { 'ia32': product.win32AppId, 'x64': product.win32x64AppId, 'arm64': product.win32arm64AppId }[arch],
94+
IncompatibleArchAppId: { 'ia32': x64AppId, 'x64': ia32AppId, 'arm64': ia32AppId }[arch],
9495
AppUserId: product.win32AppUserModelId,
95-
ArchitecturesAllowed: arch === 'ia32' ? '' : 'x64',
96-
ArchitecturesInstallIn64BitMode: arch === 'ia32' ? '' : 'x64',
96+
ArchitecturesAllowed: { 'ia32': '', 'x64': 'x64', 'arm64': 'arm64' }[arch],
97+
ArchitecturesInstallIn64BitMode: { 'ia32': '', 'x64': 'x64', 'arm64': 'arm64' }[arch],
9798
SourceDir: sourcePath,
9899
RepoDir: repoPath,
99100
OutputDir: outputPath,
@@ -112,8 +113,10 @@ function defineWin32SetupTasks(arch, target) {
112113

113114
defineWin32SetupTasks('ia32', 'system');
114115
defineWin32SetupTasks('x64', 'system');
116+
defineWin32SetupTasks('arm64', 'system');
115117
defineWin32SetupTasks('ia32', 'user');
116118
defineWin32SetupTasks('x64', 'user');
119+
defineWin32SetupTasks('arm64', 'user');
117120

118121
function archiveWin32Setup(arch) {
119122
return cb => {
@@ -145,6 +148,7 @@ function updateIcon(executablePath) {
145148

146149
gulp.task(task.define('vscode-win32-ia32-inno-updater', task.series(copyInnoUpdater('ia32'), updateIcon(path.join(buildPath('ia32'), 'tools', 'inno_updater.exe')))));
147150
gulp.task(task.define('vscode-win32-x64-inno-updater', task.series(copyInnoUpdater('x64'), updateIcon(path.join(buildPath('x64'), 'tools', 'inno_updater.exe')))));
151+
gulp.task(task.define('vscode-win32-arm64-inno-updater', task.series(copyInnoUpdater('arm64'), updateIcon(path.join(buildPath('arm64'), 'tools', 'inno_updater.exe')))));
148152

149153
// CodeHelper.exe icon
150154

product.json

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,10 @@
1111
"win32RegValueName": "CodeOSS",
1212
"win32AppId": "{{E34003BB-9E10-4501-8C11-BE3FAA83F23F}",
1313
"win32x64AppId": "{{D77B7E06-80BA-4137-BCF4-654B95CCEBC5}",
14+
"win32arm64AppId": "{{D1ACE434-89C5-48D1-88D3-E2991DF85475}",
1415
"win32UserAppId": "{{C6065F05-9603-4FC4-8101-B9781A25D88E}",
1516
"win32x64UserAppId": "{{C6065F05-9603-4FC4-8101-B9781A25D88E}",
17+
"win32arm64UserAppId": "{{3AEBF0C8-F733-4AD4-BADE-FDB816D53D7B}",
1618
"win32AppUserModelId": "Microsoft.CodeOSS",
1719
"win32ShellNameShort": "C&ode - OSS",
1820
"darwinBundleIdentifier": "com.visualstudio.code.oss",

0 commit comments

Comments
 (0)