mirror of
https://github.com/microsoft/vscode.git
synced 2026-04-21 00:59:03 +01:00
* Simplify distro Also a ton of drive-by fixing around builds: - simplified many oneliners - fixed missing custom npm registry call setups - remove unnecessary and duplicate work during builds - many many fixes
62 lines
2.4 KiB
YAML
62 lines
2.4 KiB
YAML
parameters:
|
|
- name: VSCODE_CLI_ARTIFACTS
|
|
type: object
|
|
default: []
|
|
|
|
steps:
|
|
- task: AzureKeyVault@1
|
|
displayName: "Azure Key Vault: Get Secrets"
|
|
inputs:
|
|
azureSubscription: "vscode-builds-subscription"
|
|
KeyVaultName: vscode-build-secrets
|
|
SecretsFilter: "ESRP-PKI,esrp-aad-username,esrp-aad-password"
|
|
|
|
- task: UseDotNet@2
|
|
inputs:
|
|
version: 6.x
|
|
|
|
- task: EsrpClientTool@1
|
|
displayName: "Use ESRP client"
|
|
|
|
- ${{ each target in parameters.VSCODE_CLI_ARTIFACTS }}:
|
|
- task: DownloadPipelineArtifact@2
|
|
displayName: Download artifacts
|
|
inputs:
|
|
artifact: ${{ target }}
|
|
path: $(Build.ArtifactStagingDirectory)/pkg/${{ target }}
|
|
|
|
- task: ExtractFiles@1
|
|
inputs:
|
|
archiveFilePatterns: $(Build.ArtifactStagingDirectory)/pkg/${{ target }}/*.zip
|
|
destinationFolder: $(Build.ArtifactStagingDirectory)/sign/${{ target }}
|
|
|
|
- powershell: |
|
|
. build/azure-pipelines/win32/exec.ps1
|
|
$ErrorActionPreference = "Stop"
|
|
$EsrpClientTool = (gci -directory -filter EsrpClientTool_* $(Agent.RootDirectory)\_tasks | Select-Object -last 1).FullName
|
|
$EsrpCliZip = (gci -recurse -filter esrpcli.*.zip $EsrpClientTool | Select-Object -last 1).FullName
|
|
mkdir -p $(Agent.TempDirectory)\esrpcli
|
|
Expand-Archive -Path $EsrpCliZip -DestinationPath $(Agent.TempDirectory)\esrpcli
|
|
$EsrpCliDllPath = (gci -recurse -filter esrpcli.dll $(Agent.TempDirectory)\esrpcli | Select-Object -last 1).FullName
|
|
echo "##vso[task.setvariable variable=EsrpCliDllPath]$EsrpCliDllPath"
|
|
displayName: Find ESRP CLI
|
|
|
|
- powershell: node build\azure-pipelines\common\sign $env:EsrpCliDllPath windows $(ESRP-PKI) $(esrp-aad-username) $(esrp-aad-password) $(Build.ArtifactStagingDirectory)/sign "*.exe"
|
|
displayName: "Code sign"
|
|
|
|
- ${{ each target in parameters.VSCODE_CLI_ARTIFACTS }}:
|
|
- powershell: |
|
|
$ASSET_ID = "${{ target }}".replace("unsigned_", "");
|
|
echo "##vso[task.setvariable variable=ASSET_ID]$ASSET_ID"
|
|
displayName: Set asset id variable
|
|
|
|
- task: ArchiveFiles@2
|
|
inputs:
|
|
rootFolderOrFile: $(Build.ArtifactStagingDirectory)/sign/${{ target }}
|
|
includeRootFolder: false
|
|
archiveType: zip
|
|
archiveFile: $(Build.ArtifactStagingDirectory)/$(ASSET_ID).zip
|
|
|
|
- publish: $(Build.ArtifactStagingDirectory)/$(ASSET_ID).zip
|
|
artifact: $(ASSET_ID)
|