Path: blob/main/build/azure-pipelines/darwin/product-build-darwin-cli-sign.yml
5419 views
parameters:1- name: VSCODE_BUILD_MACOS2type: boolean3- name: VSCODE_BUILD_MACOS_ARM644type: boolean56jobs:7- job: macOSCLISign8timeoutInMinutes: 909templateContext:10outputParentDirectory: $(Build.ArtifactStagingDirectory)/out11outputs:12- ${{ if eq(parameters.VSCODE_BUILD_MACOS, true) }}:13- output: pipelineArtifact14targetPath: $(Build.ArtifactStagingDirectory)/out/vscode_cli_darwin_x64_cli/vscode_cli_darwin_x64_cli.zip15artifactName: vscode_cli_darwin_x64_cli16displayName: Publish signed artifact with ID vscode_cli_darwin_x64_cli17sbomBuildDropPath: $(Build.ArtifactStagingDirectory)/sign/unsigned_vscode_cli_darwin_x64_cli18sbomPackageName: "VS Code macOS x64 CLI"19sbomPackageVersion: $(Build.SourceVersion)20- ${{ if eq(parameters.VSCODE_BUILD_MACOS_ARM64, true) }}:21- output: pipelineArtifact22targetPath: $(Build.ArtifactStagingDirectory)/out/vscode_cli_darwin_arm64_cli/vscode_cli_darwin_arm64_cli.zip23artifactName: vscode_cli_darwin_arm64_cli24displayName: Publish signed artifact with ID vscode_cli_darwin_arm64_cli25sbomBuildDropPath: $(Build.ArtifactStagingDirectory)/sign/unsigned_vscode_cli_darwin_arm64_cli26sbomPackageName: "VS Code macOS arm64 CLI"27sbomPackageVersion: $(Build.SourceVersion)28steps:29- template: ../common/checkout.yml@self3031- task: NodeTool@032inputs:33versionSource: fromFile34versionFilePath: .nvmrc3536- task: AzureKeyVault@237displayName: "Azure Key Vault: Get Secrets"38inputs:39azureSubscription: vscode40KeyVaultName: vscode-build-secrets41SecretsFilter: "github-distro-mixin-password"4243- script: node build/setup-npm-registry.ts $NPM_REGISTRY build44condition: and(succeeded(), ne(variables['NPM_REGISTRY'], 'none'))45displayName: Setup NPM Registry4647- script: |48set -e49# Set the private NPM registry to the global npmrc file50# so that authentication works for subfolders like build/, remote/, extensions/ etc51# which does not have their own .npmrc file52npm config set registry "$NPM_REGISTRY"53echo "##vso[task.setvariable variable=NPMRC_PATH]$(npm config get userconfig)"54condition: and(succeeded(), ne(variables['NPM_REGISTRY'], 'none'))55displayName: Setup NPM5657- task: npmAuthenticate@058inputs:59workingFile: $(NPMRC_PATH)60condition: and(succeeded(), ne(variables['NPM_REGISTRY'], 'none'))61displayName: Setup NPM Authentication6263- script: |64set -e6566for i in {1..5}; do # try 5 times67npm ci && break68if [ $i -eq 5 ]; then69echo "Npm install failed too many times" >&270exit 171fi72echo "Npm install failed $i, trying again..."73done74workingDirectory: build75env:76GITHUB_TOKEN: "$(github-distro-mixin-password)"77displayName: Install build dependencies7879- template: ./steps/product-build-darwin-cli-sign.yml@self80parameters:81VSCODE_CLI_ARTIFACTS:82- ${{ if eq(parameters.VSCODE_BUILD_MACOS, true) }}:83- unsigned_vscode_cli_darwin_x64_cli84- ${{ if eq(parameters.VSCODE_BUILD_MACOS_ARM64, true) }}:85- unsigned_vscode_cli_darwin_arm64_cli868788