From 7bb2bbd45de5092f61dde811a01e4cb56a7f2f72 Mon Sep 17 00:00:00 2001 From: Joao Moreno Date: Tue, 19 Mar 2019 15:24:30 +0100 Subject: [PATCH] fully build --- .../darwin/product-build-darwin.yml | 128 ++++----- .../linux/product-build-linux.yml | 174 ++++++------- .../win32/product-build-win32.yml | 246 +++++++++--------- 3 files changed, 274 insertions(+), 274 deletions(-) diff --git a/build/azure-pipelines/darwin/product-build-darwin.yml b/build/azure-pipelines/darwin/product-build-darwin.yml index b376df8e3e9..5767807e404 100644 --- a/build/azure-pipelines/darwin/product-build-darwin.yml +++ b/build/azure-pipelines/darwin/product-build-darwin.yml @@ -27,76 +27,76 @@ steps: node build/lib/builtInExtensions.js displayName: Prepare build -# - script: | -# set -e -# VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" \ -# AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ -# yarn gulp -- vscode-darwin-min -# VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" \ -# AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ -# yarn gulp -- upload-vscode-sourcemaps -# displayName: Build +- script: | + set -e + VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" \ + AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ + yarn gulp -- vscode-darwin-min + VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" \ + AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ + yarn gulp -- upload-vscode-sourcemaps + displayName: Build -# - script: | -# set -e -# ./scripts/test.sh --build --tfs "Unit Tests" -# # APP_NAME="`ls $(agent.builddirectory)/VSCode-darwin | head -n 1`" -# # yarn smoketest -- --build "$(agent.builddirectory)/VSCode-darwin/$APP_NAME" -# displayName: Run unit tests +- script: | + set -e + ./scripts/test.sh --build --tfs "Unit Tests" + # APP_NAME="`ls $(agent.builddirectory)/VSCode-darwin | head -n 1`" + # yarn smoketest -- --build "$(agent.builddirectory)/VSCode-darwin/$APP_NAME" + displayName: Run unit tests -# - script: | -# set -e -# pushd ../VSCode-darwin && zip -r -X -y ../VSCode-darwin.zip * && popd -# displayName: Archive build +- script: | + set -e + pushd ../VSCode-darwin && zip -r -X -y ../VSCode-darwin.zip * && popd + displayName: Archive build -# - task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1 -# inputs: -# ConnectedServiceName: 'ESRP CodeSign' -# FolderPath: '$(agent.builddirectory)' -# Pattern: 'VSCode-darwin.zip' -# signConfigType: inlineSignParams -# inlineOperation: | -# [ -# { -# "keyCode": "CP-401337-Apple", -# "operationSetCode": "MacAppDeveloperSign", -# "parameters": [ ], -# "toolName": "sign", -# "toolVersion": "1.0" -# } -# ] -# SessionTimeout: 120 -# displayName: Codesign +- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1 + inputs: + ConnectedServiceName: 'ESRP CodeSign' + FolderPath: '$(agent.builddirectory)' + Pattern: 'VSCode-darwin.zip' + signConfigType: inlineSignParams + inlineOperation: | + [ + { + "keyCode": "CP-401337-Apple", + "operationSetCode": "MacAppDeveloperSign", + "parameters": [ ], + "toolName": "sign", + "toolVersion": "1.0" + } + ] + SessionTimeout: 120 + displayName: Codesign -# - script: | -# set -e +- script: | + set -e -# # remove pkg from archive -# zip -d ../VSCode-darwin.zip "*.pkg" + # remove pkg from archive + zip -d ../VSCode-darwin.zip "*.pkg" -# # publish the build -# PACKAGEJSON=`ls ../VSCode-darwin/*.app/Contents/Resources/app/package.json` -# VERSION=`node -p "require(\"$PACKAGEJSON\").version"` -# AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ -# AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ -# MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ -# node build/azure-pipelines/common/publish.js \ -# "$(VSCODE_QUALITY)" \ -# darwin \ -# archive \ -# "VSCode-darwin-$(VSCODE_QUALITY).zip" \ -# $VERSION \ -# true \ -# ../VSCode-darwin.zip + # publish the build + PACKAGEJSON=`ls ../VSCode-darwin/*.app/Contents/Resources/app/package.json` + VERSION=`node -p "require(\"$PACKAGEJSON\").version"` + AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ + AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ + MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ + node build/azure-pipelines/common/publish.js \ + "$(VSCODE_QUALITY)" \ + darwin \ + archive \ + "VSCode-darwin-$(VSCODE_QUALITY).zip" \ + $VERSION \ + true \ + ../VSCode-darwin.zip -# # publish hockeyapp symbols -# node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" "$(VSCODE_HOCKEYAPP_ID_MACOS)" + # publish hockeyapp symbols + node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" "$(VSCODE_HOCKEYAPP_ID_MACOS)" -# # upload configuration -# AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ -# yarn gulp -- upload-vscode-configuration -# displayName: Publish + # upload configuration + AZURE_STORAGE_ACCESS_KEY="$(AZURE_STORAGE_ACCESS_KEY)" \ + yarn gulp -- upload-vscode-configuration + displayName: Publish -# - task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 -# displayName: 'Component Detection' -# continueOnError: true +- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 + displayName: 'Component Detection' + continueOnError: true diff --git a/build/azure-pipelines/linux/product-build-linux.yml b/build/azure-pipelines/linux/product-build-linux.yml index ae4ec05322c..68153b7fc7c 100644 --- a/build/azure-pipelines/linux/product-build-linux.yml +++ b/build/azure-pipelines/linux/product-build-linux.yml @@ -30,90 +30,90 @@ steps: node build/azure-pipelines/common/installDistro.js node build/lib/builtInExtensions.js -# - script: | -# set -e -# VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" npm run gulp -- vscode-linux-$(VSCODE_ARCH)-min -# name: build - -# - script: | -# set -e -# npm run gulp -- "electron-$(VSCODE_ARCH)" - -# # xvfb seems to be crashing often, let's make sure it's always up -# service xvfb start - -# DISPLAY=:10 ./scripts/test.sh --build --tfs "Unit Tests" -# # yarn smoketest -- --build "$(agent.builddirectory)/VSCode-linux-$(VSCODE_ARCH)" -# name: test - -# - script: | -# set -e -# REPO="$(pwd)" -# ROOT="$REPO/.." -# ARCH="$(VSCODE_ARCH)" - -# # Publish tarball -# PLATFORM_LINUX="linux-$(VSCODE_ARCH)" -# [[ "$ARCH" == "ia32" ]] && DEB_ARCH="i386" || DEB_ARCH="amd64" -# [[ "$ARCH" == "ia32" ]] && RPM_ARCH="i386" || RPM_ARCH="x86_64" -# BUILDNAME="VSCode-$PLATFORM_LINUX" -# BUILD="$ROOT/$BUILDNAME" -# BUILD_VERSION="$(date +%s)" -# [ -z "$VSCODE_QUALITY" ] && TARBALL_FILENAME="code-$BUILD_VERSION.tar.gz" || TARBALL_FILENAME="code-$VSCODE_QUALITY-$BUILD_VERSION.tar.gz" -# TARBALL_PATH="$ROOT/$TARBALL_FILENAME" -# PACKAGEJSON="$BUILD/resources/app/package.json" -# VERSION=$(node -p "require(\"$PACKAGEJSON\").version") - -# rm -rf $ROOT/code-*.tar.* -# (cd $ROOT && tar -czf $TARBALL_PATH $BUILDNAME) - -# AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ -# AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ -# MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ -# node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_LINUX" archive-unsigned "$TARBALL_FILENAME" "$VERSION" true "$TARBALL_PATH" - -# # Publish hockeyapp symbols -# node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" "$(VSCODE_HOCKEYAPP_ID_LINUX64)" - -# # Publish DEB -# npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-build-deb" -# PLATFORM_DEB="linux-deb-$ARCH" -# [[ "$ARCH" == "ia32" ]] && DEB_ARCH="i386" || DEB_ARCH="amd64" -# DEB_FILENAME="$(ls $REPO/.build/linux/deb/$DEB_ARCH/deb/)" -# DEB_PATH="$REPO/.build/linux/deb/$DEB_ARCH/deb/$DEB_FILENAME" - -# AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ -# AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ -# MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ -# node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_DEB" package "$DEB_FILENAME" "$VERSION" true "$DEB_PATH" - -# # Publish RPM -# npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-build-rpm" -# PLATFORM_RPM="linux-rpm-$ARCH" -# [[ "$ARCH" == "ia32" ]] && RPM_ARCH="i386" || RPM_ARCH="x86_64" -# RPM_FILENAME="$(ls $REPO/.build/linux/rpm/$RPM_ARCH/ | grep .rpm)" -# RPM_PATH="$REPO/.build/linux/rpm/$RPM_ARCH/$RPM_FILENAME" - -# AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ -# AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ -# MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ -# node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_RPM" package "$RPM_FILENAME" "$VERSION" true "$RPM_PATH" - -# # Publish Snap -# npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-prepare-snap" - -# # Pack snap tarball artifact, in order to preserve file perms -# mkdir -p $REPO/.build/linux/snap-tarball -# SNAP_TARBALL_PATH="$REPO/.build/linux/snap-tarball/snap-$(VSCODE_ARCH).tar.gz" -# rm -rf $SNAP_TARBALL_PATH -# (cd .build/linux && tar -czf $SNAP_TARBALL_PATH snap) - -# - task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 -# displayName: 'Component Detection' -# continueOnError: true - -# - task: PublishPipelineArtifact@0 -# displayName: 'Publish Pipeline Artifact' -# inputs: -# artifactName: snap-$(VSCODE_ARCH) -# targetPath: .build/linux/snap-tarball +- script: | + set -e + VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" npm run gulp -- vscode-linux-$(VSCODE_ARCH)-min + name: build + +- script: | + set -e + npm run gulp -- "electron-$(VSCODE_ARCH)" + + # xvfb seems to be crashing often, let's make sure it's always up + service xvfb start + + DISPLAY=:10 ./scripts/test.sh --build --tfs "Unit Tests" + # yarn smoketest -- --build "$(agent.builddirectory)/VSCode-linux-$(VSCODE_ARCH)" + name: test + +- script: | + set -e + REPO="$(pwd)" + ROOT="$REPO/.." + ARCH="$(VSCODE_ARCH)" + + # Publish tarball + PLATFORM_LINUX="linux-$(VSCODE_ARCH)" + [[ "$ARCH" == "ia32" ]] && DEB_ARCH="i386" || DEB_ARCH="amd64" + [[ "$ARCH" == "ia32" ]] && RPM_ARCH="i386" || RPM_ARCH="x86_64" + BUILDNAME="VSCode-$PLATFORM_LINUX" + BUILD="$ROOT/$BUILDNAME" + BUILD_VERSION="$(date +%s)" + [ -z "$VSCODE_QUALITY" ] && TARBALL_FILENAME="code-$BUILD_VERSION.tar.gz" || TARBALL_FILENAME="code-$VSCODE_QUALITY-$BUILD_VERSION.tar.gz" + TARBALL_PATH="$ROOT/$TARBALL_FILENAME" + PACKAGEJSON="$BUILD/resources/app/package.json" + VERSION=$(node -p "require(\"$PACKAGEJSON\").version") + + rm -rf $ROOT/code-*.tar.* + (cd $ROOT && tar -czf $TARBALL_PATH $BUILDNAME) + + AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ + AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ + MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ + node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_LINUX" archive-unsigned "$TARBALL_FILENAME" "$VERSION" true "$TARBALL_PATH" + + # Publish hockeyapp symbols + node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" "$(VSCODE_HOCKEYAPP_ID_LINUX64)" + + # Publish DEB + npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-build-deb" + PLATFORM_DEB="linux-deb-$ARCH" + [[ "$ARCH" == "ia32" ]] && DEB_ARCH="i386" || DEB_ARCH="amd64" + DEB_FILENAME="$(ls $REPO/.build/linux/deb/$DEB_ARCH/deb/)" + DEB_PATH="$REPO/.build/linux/deb/$DEB_ARCH/deb/$DEB_FILENAME" + + AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ + AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ + MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ + node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_DEB" package "$DEB_FILENAME" "$VERSION" true "$DEB_PATH" + + # Publish RPM + npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-build-rpm" + PLATFORM_RPM="linux-rpm-$ARCH" + [[ "$ARCH" == "ia32" ]] && RPM_ARCH="i386" || RPM_ARCH="x86_64" + RPM_FILENAME="$(ls $REPO/.build/linux/rpm/$RPM_ARCH/ | grep .rpm)" + RPM_PATH="$REPO/.build/linux/rpm/$RPM_ARCH/$RPM_FILENAME" + + AZURE_DOCUMENTDB_MASTERKEY="$(AZURE_DOCUMENTDB_MASTERKEY)" \ + AZURE_STORAGE_ACCESS_KEY_2="$(AZURE_STORAGE_ACCESS_KEY_2)" \ + MOONCAKE_STORAGE_ACCESS_KEY="$(MOONCAKE_STORAGE_ACCESS_KEY)" \ + node build/azure-pipelines/common/publish.js "$VSCODE_QUALITY" "$PLATFORM_RPM" package "$RPM_FILENAME" "$VERSION" true "$RPM_PATH" + + # Publish Snap + npm run gulp -- "vscode-linux-$(VSCODE_ARCH)-prepare-snap" + + # Pack snap tarball artifact, in order to preserve file perms + mkdir -p $REPO/.build/linux/snap-tarball + SNAP_TARBALL_PATH="$REPO/.build/linux/snap-tarball/snap-$(VSCODE_ARCH).tar.gz" + rm -rf $SNAP_TARBALL_PATH + (cd .build/linux && tar -czf $SNAP_TARBALL_PATH snap) + +- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 + displayName: 'Component Detection' + continueOnError: true + +- task: PublishPipelineArtifact@0 + displayName: 'Publish Pipeline Artifact' + inputs: + artifactName: snap-$(VSCODE_ARCH) + targetPath: .build/linux/snap-tarball diff --git a/build/azure-pipelines/win32/product-build-win32.yml b/build/azure-pipelines/win32/product-build-win32.yml index 0b1e75a44be..5a1cfbecbb2 100644 --- a/build/azure-pipelines/win32/product-build-win32.yml +++ b/build/azure-pipelines/win32/product-build-win32.yml @@ -27,126 +27,126 @@ steps: exec { node build/azure-pipelines/common/installDistro.js } exec { node build/lib/builtInExtensions.js } -# - powershell: | -# . build/azure-pipelines/win32/exec.ps1 -# $ErrorActionPreference = "Stop" -# $env:VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" -# exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-min" } -# exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-inno-updater" } -# name: build - -# - powershell: | -# . build/azure-pipelines/win32/exec.ps1 -# $ErrorActionPreference = "Stop" -# exec { npm run gulp -- "electron-$(VSCODE_ARCH)" } -# exec { .\scripts\test.bat --build --tfs "Unit Tests" } -# # yarn smoketest -- --build "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)" -# name: test - -# - task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1 -# inputs: -# ConnectedServiceName: 'ESRP CodeSign' -# FolderPath: '$(agent.builddirectory)/VSCode-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" -# exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-archive" "vscode-win32-$(VSCODE_ARCH)-system-setup" "vscode-win32-$(VSCODE_ARCH)-user-setup" --sign } - -# $Repo = "$(pwd)" -# $Root = "$Repo\.." -# $SystemExe = "$Repo\.build\win32-$(VSCODE_ARCH)\system-setup\VSCodeSetup.exe" -# $UserExe = "$Repo\.build\win32-$(VSCODE_ARCH)\user-setup\VSCodeSetup.exe" -# $Zip = "$Repo\.build\win32-$(VSCODE_ARCH)\archive\VSCode-win32-$(VSCODE_ARCH).zip" -# $Build = "$Root\VSCode-win32-$(VSCODE_ARCH)" - -# # get version -# $PackageJson = Get-Content -Raw -Path "$Build\resources\app\package.json" | ConvertFrom-Json -# $Version = $PackageJson.version -# $Quality = "$env:VSCODE_QUALITY" -# $env:AZURE_STORAGE_ACCESS_KEY_2 = "$(AZURE_STORAGE_ACCESS_KEY_2)" -# $env:MOONCAKE_STORAGE_ACCESS_KEY = "$(MOONCAKE_STORAGE_ACCESS_KEY)" -# $env:AZURE_DOCUMENTDB_MASTERKEY = "$(AZURE_DOCUMENTDB_MASTERKEY)" - -# $assetPlatform = if ("$(VSCODE_ARCH)" -eq "ia32") { "win32" } else { "win32-x64" } - -# exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform-archive" archive "VSCode-win32-$(VSCODE_ARCH)-$Version.zip" $Version true $Zip } -# exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform" setup "VSCodeSetup-$(VSCODE_ARCH)-$Version.exe" $Version true $SystemExe } -# exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform-user" setup "VSCodeUserSetup-$(VSCODE_ARCH)-$Version.exe" $Version true $UserExe } - -# # publish hockeyapp symbols -# $hockeyAppId = if ("$(VSCODE_ARCH)" -eq "ia32") { "$(VSCODE_HOCKEYAPP_ID_WIN32)" } else { "$(VSCODE_HOCKEYAPP_ID_WIN64)" } -# exec { node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" $hockeyAppId } - -# - task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 -# displayName: 'Component Detection' -# continueOnError: true +- powershell: | + . build/azure-pipelines/win32/exec.ps1 + $ErrorActionPreference = "Stop" + $env:VSCODE_MIXIN_PASSWORD="$(VSCODE_MIXIN_PASSWORD)" + exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-min" } + exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-inno-updater" } + name: build + +- powershell: | + . build/azure-pipelines/win32/exec.ps1 + $ErrorActionPreference = "Stop" + exec { npm run gulp -- "electron-$(VSCODE_ARCH)" } + exec { .\scripts\test.bat --build --tfs "Unit Tests" } + # yarn smoketest -- --build "$(agent.builddirectory)\VSCode-win32-$(VSCODE_ARCH)" + name: test + +- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1 + inputs: + ConnectedServiceName: 'ESRP CodeSign' + FolderPath: '$(agent.builddirectory)/VSCode-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" + exec { npm run gulp -- "vscode-win32-$(VSCODE_ARCH)-archive" "vscode-win32-$(VSCODE_ARCH)-system-setup" "vscode-win32-$(VSCODE_ARCH)-user-setup" --sign } + + $Repo = "$(pwd)" + $Root = "$Repo\.." + $SystemExe = "$Repo\.build\win32-$(VSCODE_ARCH)\system-setup\VSCodeSetup.exe" + $UserExe = "$Repo\.build\win32-$(VSCODE_ARCH)\user-setup\VSCodeSetup.exe" + $Zip = "$Repo\.build\win32-$(VSCODE_ARCH)\archive\VSCode-win32-$(VSCODE_ARCH).zip" + $Build = "$Root\VSCode-win32-$(VSCODE_ARCH)" + + # get version + $PackageJson = Get-Content -Raw -Path "$Build\resources\app\package.json" | ConvertFrom-Json + $Version = $PackageJson.version + $Quality = "$env:VSCODE_QUALITY" + $env:AZURE_STORAGE_ACCESS_KEY_2 = "$(AZURE_STORAGE_ACCESS_KEY_2)" + $env:MOONCAKE_STORAGE_ACCESS_KEY = "$(MOONCAKE_STORAGE_ACCESS_KEY)" + $env:AZURE_DOCUMENTDB_MASTERKEY = "$(AZURE_DOCUMENTDB_MASTERKEY)" + + $assetPlatform = if ("$(VSCODE_ARCH)" -eq "ia32") { "win32" } else { "win32-x64" } + + exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform-archive" archive "VSCode-win32-$(VSCODE_ARCH)-$Version.zip" $Version true $Zip } + exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform" setup "VSCodeSetup-$(VSCODE_ARCH)-$Version.exe" $Version true $SystemExe } + exec { node build/azure-pipelines/common/publish.js $Quality "$global:assetPlatform-user" setup "VSCodeUserSetup-$(VSCODE_ARCH)-$Version.exe" $Version true $UserExe } + + # publish hockeyapp symbols + $hockeyAppId = if ("$(VSCODE_ARCH)" -eq "ia32") { "$(VSCODE_HOCKEYAPP_ID_WIN32)" } else { "$(VSCODE_HOCKEYAPP_ID_WIN64)" } + exec { node build/azure-pipelines/common/symbols.js "$(VSCODE_MIXIN_PASSWORD)" "$(VSCODE_HOCKEYAPP_TOKEN)" "$(VSCODE_ARCH)" $hockeyAppId } + +- task: ms.vss-governance-buildtask.governance-build-task-component-detection.ComponentGovernanceComponentDetection@0 + displayName: 'Component Detection' + continueOnError: true -- GitLab