Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
1c5f7e36
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
未验证
提交
1c5f7e36
编写于
5月 25, 2020
作者:
J
João Moreno
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
full fledged arm64 build
上级
04be06ff
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
316 addition
and
138 deletion
+316
-138
build/azure-pipelines/product-build.yml
build/azure-pipelines/product-build.yml
+131
-131
build/azure-pipelines/win32/product-build-win32-arm64.yml
build/azure-pipelines/win32/product-build-win32-arm64.yml
+169
-0
build/azure-pipelines/win32/publish.ps1
build/azure-pipelines/win32/publish.ps1
+16
-7
未找到文件。
build/azure-pipelines/product-build.yml
浏览文件 @
1c5f7e36
...
...
@@ -7,157 +7,157 @@ resources:
image
:
snapcore/snapcraft:stable
jobs
:
#
- job: Compile
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
container: vscode-x64
#
steps:
#
- template: product-compile.yml
-
job
:
Compile
pool
:
vmImage
:
'
Ubuntu-16.04'
container
:
vscode-x64
steps
:
-
template
:
product-compile.yml
#
- job: Windows
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32'], 'true'))
#
pool:
#
vmImage: VS2017-Win2016
#
variables:
#
VSCODE_ARCH: x64
#
dependsOn:
#
- Compile
#
steps:
#
- template: win32/product-build-win32.yml
-
job
:
Windows
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32'], 'true'))
pool
:
vmImage
:
VS2017-Win2016
variables
:
VSCODE_ARCH
:
x64
dependsOn
:
-
Compile
steps
:
-
template
:
win32/product-build-win32.yml
#
- job: Windows32
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32_32BIT'], 'true'))
#
pool:
#
vmImage: VS2017-Win2016
#
variables:
#
VSCODE_ARCH: ia32
#
dependsOn:
#
- Compile
#
steps:
#
- template: win32/product-build-win32.yml
-
job
:
Windows32
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32_32BIT'], 'true'))
pool
:
vmImage
:
VS2017-Win2016
variables
:
VSCODE_ARCH
:
ia32
dependsOn
:
-
Compile
steps
:
-
template
:
win32/product-build-win32.yml
-
job
:
WindowsARM64
# condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32_32BIT
'], 'true'))
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WIN32_ARM64
'], 'true'))
pool
:
vmImage
:
VS2017-Win2016
variables
:
VSCODE_ARCH
:
arm64
#
dependsOn:
#
- Compile
dependsOn
:
-
Compile
steps
:
-
template
:
win32/product-build-win32-arm64.yml
#
- job: Linux
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
container: vscode-x64
#
dependsOn:
#
- Compile
#
steps:
#
- template: linux/product-build-linux.yml
-
job
:
Linux
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
container
:
vscode-x64
dependsOn
:
-
Compile
steps
:
-
template
:
linux/product-build-linux.yml
#
- job: LinuxSnap
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
container: snapcraft
#
dependsOn: Linux
#
steps:
#
- template: linux/snap-build-linux.yml
-
job
:
LinuxSnap
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
container
:
snapcraft
dependsOn
:
Linux
steps
:
-
template
:
linux/snap-build-linux.yml
#
- job: LinuxArmhf
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ARMHF'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
variables:
#
VSCODE_ARCH: armhf
#
dependsOn:
#
- Compile
#
steps:
#
- template: linux/product-build-linux-multiarch.yml
-
job
:
LinuxArmhf
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ARMHF'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
variables
:
VSCODE_ARCH
:
armhf
dependsOn
:
-
Compile
steps
:
-
template
:
linux/product-build-linux-multiarch.yml
#
- job: LinuxArm64
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ARM64'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
variables:
#
VSCODE_ARCH: arm64
#
dependsOn:
#
- Compile
#
steps:
#
- template: linux/product-build-linux-multiarch.yml
-
job
:
LinuxArm64
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ARM64'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
variables
:
VSCODE_ARCH
:
arm64
dependsOn
:
-
Compile
steps
:
-
template
:
linux/product-build-linux-multiarch.yml
#
- job: LinuxAlpine
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ALPINE'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
variables:
#
VSCODE_ARCH: alpine
#
dependsOn:
#
- Compile
#
steps:
#
- template: linux/product-build-linux-multiarch.yml
-
job
:
LinuxAlpine
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_LINUX_ALPINE'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
variables
:
VSCODE_ARCH
:
alpine
dependsOn
:
-
Compile
steps
:
-
template
:
linux/product-build-linux-multiarch.yml
#
- job: LinuxWeb
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WEB'], 'true'))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
variables:
#
VSCODE_ARCH: x64
#
dependsOn:
#
- Compile
#
steps:
#
- template: web/product-build-web.yml
-
job
:
LinuxWeb
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_WEB'], 'true'))
pool
:
vmImage
:
'
Ubuntu-16.04'
variables
:
VSCODE_ARCH
:
x64
dependsOn
:
-
Compile
steps
:
-
template
:
web/product-build-web.yml
#
- job: macOS
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_MACOS'], 'true'))
#
pool:
#
vmImage: macOS-latest
#
dependsOn:
#
- Compile
#
steps:
#
- template: darwin/product-build-darwin.yml
-
job
:
macOS
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), eq(variables['VSCODE_BUILD_MACOS'], 'true'))
pool
:
vmImage
:
macOS-latest
dependsOn
:
-
Compile
steps
:
-
template
:
darwin/product-build-darwin.yml
#
- job: Release
#
condition: and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), or(eq(variables['VSCODE_RELEASE'], 'true'), and(or(eq(variables['VSCODE_QUALITY'], 'insider'), eq(variables['VSCODE_QUALITY'], 'exploration')), eq(variables['Build.Reason'], 'Schedule'))))
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
dependsOn:
#
- Windows
#
- Windows32
#
- Linux
#
- LinuxSnap
#
- LinuxArmhf
#
- LinuxArm64
#
- LinuxAlpine
#
- macOS
#
steps:
#
- template: release.yml
-
job
:
Release
condition
:
and(succeeded(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'), or(eq(variables['VSCODE_RELEASE'], 'true'), and(or(eq(variables['VSCODE_QUALITY'], 'insider'), eq(variables['VSCODE_QUALITY'], 'exploration')), eq(variables['Build.Reason'], 'Schedule'))))
pool
:
vmImage
:
'
Ubuntu-16.04'
dependsOn
:
-
Windows
-
Windows32
-
Linux
-
LinuxSnap
-
LinuxArmhf
-
LinuxArm64
-
LinuxAlpine
-
macOS
steps
:
-
template
:
release.yml
#
- job: Mooncake
#
pool:
#
vmImage: 'Ubuntu-16.04'
#
condition: and(succeededOrFailed(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'))
#
dependsOn:
#
- Windows
#
- Windows32
#
- Linux
#
- LinuxSnap
#
- LinuxArmhf
#
- LinuxArm64
#
- LinuxAlpine
#
- LinuxWeb
#
- macOS
#
steps:
#
- template: sync-mooncake.yml
-
job
:
Mooncake
pool
:
vmImage
:
'
Ubuntu-16.04'
condition
:
and(succeededOrFailed(), eq(variables['VSCODE_COMPILE_ONLY'], 'false'))
dependsOn
:
-
Windows
-
Windows32
-
Linux
-
LinuxSnap
-
LinuxArmhf
-
LinuxArm64
-
LinuxAlpine
-
LinuxWeb
-
macOS
steps
:
-
template
:
sync-mooncake.yml
trigger
:
none
pr
:
none
#
schedules:
#
- cron: "0 5 * * Mon-Fri"
#
displayName: Mon-Fri at 7:00
#
branches:
#
include:
#
- master
schedules
:
-
cron
:
"
0
5
*
*
Mon-Fri"
displayName
:
Mon-Fri at 7:00
branches
:
include
:
-
master
build/azure-pipelines/win32/product-build-win32-arm64.yml
浏览文件 @
1c5f7e36
steps
:
-
powershell
:
|
mkdir .build -ea 0
"$env:BUILD_SOURCEVERSION" | Out-File -Encoding ascii -NoNewLine .build\commit
"$env:VSCODE_QUALITY" | Out-File -Encoding ascii -NoNewLine .build\quality
displayName
:
Prepare cache flag
-
task
:
1ESLighthouseEng.PipelineArtifactCaching.RestoreCacheV1.RestoreCache@1
inputs
:
keyfile
:
'
build/.cachesalt,
.build/commit,
.build/quality'
targetfolder
:
'
.build,
out-build,
out-vscode-min,
out-vscode-reh-min,
out-vscode-reh-web-min'
vstsFeed
:
'
npm-vscode'
platformIndependent
:
true
alias
:
'
Compilation'
-
powershell
:
|
$ErrorActionPreference = "Stop"
exit 1
displayName
:
Check RestoreCache
condition
:
and(succeeded(), ne(variables['CacheRestored-Compilation'], 'true'))
-
task
:
NodeTool@0
inputs
:
versionSpec
:
"
12.13.0"
...
...
@@ -12,6 +32,38 @@ steps:
versionSpec
:
'
2.x'
addToPath
:
true
-
task
:
AzureKeyVault@1
displayName
:
'
Azure
Key
Vault:
Get
Secrets'
inputs
:
azureSubscription
:
'
vscode-builds-subscription'
KeyVaultName
:
vscode
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
"machine github.com`nlogin vscode`npassword $(github-distro-mixin-password)" | Out-File "$env:USERPROFILE\_netrc" -Encoding ASCII
exec { git config user.email "vscode@microsoft.com" }
exec { git config user.name "VSCode" }
mkdir .build -ea 0
"$(VSCODE_ARCH)" | Out-File -Encoding ascii -NoNewLine .build\arch
displayName
:
Prepare tooling
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
exec { git remote add distro "https://github.com/$(VSCODE_MIXIN_REPO).git" }
exec { git fetch distro }
exec { git merge $(node -p "require('./package.json').distro") }
displayName
:
Merge distro
-
task
:
1ESLighthouseEng.PipelineArtifactCaching.RestoreCacheV1.RestoreCache@1
inputs
:
keyfile
:
'
build/.cachesalt,
.build/arch,
.yarnrc,
remote/.yarnrc,
**/yarn.lock,
!**/node_modules/**/yarn.lock,
!**/.*/**/yarn.lock'
targetfolder
:
'
**/node_modules,
!**/node_modules/**/node_modules'
vstsFeed
:
'
npm-vscode'
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
...
...
@@ -19,3 +71,120 @@ steps:
$env:CHILD_CONCURRENCY="1"
exec { yarn --frozen-lockfile }
displayName
:
Install dependencies
condition
:
and(succeeded(), ne(variables['CacheRestored'], 'true'))
-
task
:
1ESLighthouseEng.PipelineArtifactCaching.SaveCacheV1.SaveCache@1
inputs
:
keyfile
:
'
build/.cachesalt,
.build/arch,
.yarnrc,
remote/.yarnrc,
**/yarn.lock,
!**/node_modules/**/yarn.lock,
!**/.*/**/yarn.lock'
targetfolder
:
'
**/node_modules,
!**/node_modules/**/node_modules'
vstsFeed
:
'
npm-vscode'
condition
:
and(succeeded(), ne(variables['CacheRestored'], 'true'))
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
exec { yarn postinstall }
displayName
:
Run postinstall scripts
condition
:
and(succeeded(), eq(variables['CacheRestored'], 'true'))
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
exec { node build/azure-pipelines/mixin }
displayName
:
Mix in quality
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
$env:VSCODE_MIXIN_PASSWORD="$(github-distro-mixin-password)"
exec { yarn gulp "vscode-win32-$env:VSCODE_ARCH-min-ci" }
exec { yarn gulp "vscode-win32-$env:VSCODE_ARCH-code-helper" }
# exec { yarn gulp "vscode-win32-$env:VSCODE_ARCH-inno-updater" }
displayName
:
Build
# - task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
# inputs:
# ConnectedServiceName: 'ESRP CodeSign'
# FolderPath: '$(agent.builddirectory)/VSCode-win32-$(VSCODE_ARCH),$(agent.builddirectory)/vscode-reh-win32-$(VSCODE_ARCH)'
# Pattern: '*.dll,*.exe,*.node'
# signConfigType: inlineSignParams
# inlineOperation: |
# [
# {
# "keyCode": "CP-230012",
# "operationSetCode": "SigntoolSign",
# "parameters": [
# {
# "parameterName": "OpusName",
# "parameterValue": "VS Code"
# },
# {
# "parameterName": "OpusInfo",
# "parameterValue": "https://code.visualstudio.com/"
# },
# {
# "parameterName": "Append",
# "parameterValue": "/as"
# },
# {
# "parameterName": "FileDigest",
# "parameterValue": "/fd \"SHA256\""
# },
# {
# "parameterName": "PageHash",
# "parameterValue": "/NPH"
# },
# {
# "parameterName": "TimeStamp",
# "parameterValue": "/tr \"http://rfc3161.gtm.corp.microsoft.com/TSS/HttpTspServer\" /td sha256"
# }
# ],
# "toolName": "sign",
# "toolVersion": "1.0"
# },
# {
# "keyCode": "CP-230012",
# "operationSetCode": "SigntoolVerify",
# "parameters": [
# {
# "parameterName": "VerifyAll",
# "parameterValue": "/all"
# }
# ],
# "toolName": "sign",
# "toolVersion": "1.0"
# }
# ]
# SessionTimeout: 120
# - task: NuGetCommand@2
# displayName: Install ESRPClient.exe
# inputs:
# restoreSolution: 'build\azure-pipelines\win32\ESRPClient\packages.config'
# feedsToUse: config
# nugetConfigPath: 'build\azure-pipelines\win32\ESRPClient\NuGet.config'
# externalFeedCredentials: 3fc0b7f7-da09-4ae7-a9c8-d69824b1819b
# restoreDirectory: packages
# - task: ESRPImportCertTask@1
# displayName: Import ESRP Request Signing Certificate
# inputs:
# ESRP: 'ESRP CodeSign'
# - powershell: |
# $ErrorActionPreference = "Stop"
# .\build\azure-pipelines\win32\import-esrp-auth-cert.ps1 -AuthCertificateBase64 $(esrp-auth-certificate) -AuthCertificateKey $(esrp-auth-certificate-key)
# displayName: Import ESRP Auth Certificate
-
powershell
:
|
. build/azure-pipelines/win32/exec.ps1
$ErrorActionPreference = "Stop"
$env:AZURE_STORAGE_ACCESS_KEY_2 = "$(vscode-storage-key)"
$env:AZURE_DOCUMENTDB_MASTERKEY = "$(builds-docdb-key-readwrite)"
$env:VSCODE_MIXIN_PASSWORD="$(github-distro-mixin-password)"
.\build\azure-pipelines\win32\publish.ps1
displayName
:
Publish
-
task
:
ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0
displayName
:
'
Component
Detection'
continueOnError
:
true
build/azure-pipelines/win32/publish.ps1
浏览文件 @
1c5f7e36
...
...
@@ -3,7 +3,11 @@ $ErrorActionPreference = "Stop"
$Arch
=
"
$
env
:
VSCODE_ARCH
"
exec
{
yarn
gulp
"vscode-win32-
$Arch
-archive"
"vscode-win32-
$Arch
-system-setup"
"vscode-win32-
$Arch
-user-setup"
--sign
}
if
(
"
$Arch
"
-eq
"arm64"
)
{
exec
{
yarn
gulp
"vscode-win32-
$Arch
-archive"
}
}
else
{
exec
{
yarn
gulp
"vscode-win32-
$Arch
-archive"
"vscode-win32-
$Arch
-system-setup"
"vscode-win32-
$Arch
-user-setup"
--sign
}
}
$Repo
=
"
$(
pwd
)
"
$Root
= "
$Repo
\..
"
...
...
@@ -16,16 +20,21 @@ $ServerZip = "$Repo\.build\vscode-server-win32-$Arch.zip"
$Build
= "
$Root
\VSCode-win32-
$Arch
"
# Create server archive
exec { xcopy
$LegacyServer
$Server
/H /E /I }
exec { .\node_modules\7zip\7zip-lite\7z.exe a -tzip
$ServerZip
$Server
-r }
if ("
$Arch
" -ne "
arm64
") {
exec { xcopy
$LegacyServer
$Server
/H /E /I }
exec { .\node_modules\7zip\7zip-lite\7z.exe a -tzip
$ServerZip
$Server
-r }
}
# get version
$PackageJson
= Get-Content -Raw -Path "
$Build
\resources\app\package.json
" | ConvertFrom-Json
$Version
=
$PackageJson
.version
$AssetPlatform
= if ("
$Arch
" -eq "
ia32
") { "
win32
" } else { "
win32-
x64
" }
$AssetPlatform
= if ("
$Arch
" -eq "
ia32
") { "
win32
" } else { "
win32-
$Arch
" }
exec { node build/azure-pipelines/common/createAsset.js "
$AssetPlatform
-archive
" archive "
VSCode-win32-
$Arch
-
$Version
.
zip
"
$Zip
}
exec { node build/azure-pipelines/common/createAsset.js "
$AssetPlatform
" setup "
VSCodeSetup-
$Arch
-
$Version
.
exe
"
$SystemExe
}
exec { node build/azure-pipelines/common/createAsset.js "
$AssetPlatform
-user
" setup "
VSCodeUserSetup-
$Arch
-
$Version
.
exe
"
$UserExe
}
exec { node build/azure-pipelines/common/createAsset.js "
server-
$AssetPlatform
" archive "
vscode-server-win32-
$Arch
.
zip
"
$ServerZip
}
if ("
$Arch
" -ne "
arm64
") {
exec { node build/azure-pipelines/common/createAsset.js "
$AssetPlatform
" setup "
VSCodeSetup-
$Arch
-
$Version
.
exe
"
$SystemExe
}
exec { node build/azure-pipelines/common/createAsset.js "
$AssetPlatform
-user
" setup "
VSCodeUserSetup-
$Arch
-
$Version
.
exe
"
$UserExe
}
exec { node build/azure-pipelines/common/createAsset.js "
server-
$AssetPlatform
" archive "
vscode-server-win32-
$Arch
.
zip
"
$ServerZip
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录