Path: blob/main/build/azure-pipelines/linux/product-build-linux.yml
5310 views
parameters:1- name: NPM_ARCH2type: string3- name: VSCODE_ARCH4type: string5- name: VSCODE_CIBUILD6type: boolean7- name: VSCODE_QUALITY8type: string9- name: VSCODE_BUILD_LINUX_SNAP10type: boolean11default: false12- name: VSCODE_RUN_ELECTRON_TESTS13type: boolean14default: false15- name: VSCODE_RUN_BROWSER_TESTS16type: boolean17default: false18- name: VSCODE_RUN_REMOTE_TESTS19type: boolean20default: false2122jobs:23- job: Linux_${{ parameters.VSCODE_ARCH }}24displayName: Linux (${{ upper(parameters.VSCODE_ARCH) }})25timeoutInMinutes: 9026variables:27DISPLAY: ":10"28NPM_ARCH: ${{ parameters.NPM_ARCH }}29VSCODE_ARCH: ${{ parameters.VSCODE_ARCH }}30templateContext:31sdl:32binskim:33analyzeTargetGlob: '$(Agent.BuildDirectory)/VSCode-linux-$(VSCODE_ARCH)/**/*.node;$(Agent.BuildDirectory)/vscode-server-linux-$(VSCODE_ARCH)/**/*.node;$(Agent.BuildDirectory)/vscode-server-linux-$(VSCODE_ARCH)-web/**/*.node'34preReleaseVersion: '4.3.1'35outputParentDirectory: $(Build.ArtifactStagingDirectory)/out36outputs:37- ${{ if or(eq(parameters.VSCODE_RUN_ELECTRON_TESTS, true), eq(parameters.VSCODE_RUN_BROWSER_TESTS, true), eq(parameters.VSCODE_RUN_REMOTE_TESTS, true)) }}:38- output: pipelineArtifact39targetPath: $(Build.SourcesDirectory)/.build/crashes40artifactName: crash-dump-linux-$(VSCODE_ARCH)-$(System.JobAttempt)41displayName: Publish Crash Reports42sbomEnabled: false43isProduction: false44condition: failed()45- output: pipelineArtifact46targetPath: $(Build.SourcesDirectory)/node_modules47artifactName: node-modules-linux-$(VSCODE_ARCH)-$(System.JobAttempt)48displayName: Publish Node Modules49sbomEnabled: false50isProduction: false51condition: failed()52- output: pipelineArtifact53targetPath: $(Build.SourcesDirectory)/.build/logs54artifactName: logs-linux-$(VSCODE_ARCH)-$(System.JobAttempt)55displayName: Publish Log Files56sbomEnabled: false57isProduction: false58condition: succeededOrFailed()59- output: pipelineArtifact60targetPath: $(Build.ArtifactStagingDirectory)/out/client/$(CLIENT_ARCHIVE_NAME)61artifactName: vscode_client_linux_$(VSCODE_ARCH)_archive-unsigned62displayName: Publish client archive63sbomBuildDropPath: $(Agent.BuildDirectory)/VSCode-linux-$(VSCODE_ARCH)64sbomPackageName: "VS Code Linux $(VSCODE_ARCH) (unsigned)"65sbomPackageVersion: $(Build.SourceVersion)66- output: pipelineArtifact67targetPath: $(Build.ArtifactStagingDirectory)/out/server/vscode-server-linux-$(VSCODE_ARCH).tar.gz68artifactName: vscode_server_linux_$(VSCODE_ARCH)_archive-unsigned69displayName: Publish server archive70sbomBuildDropPath: $(Agent.BuildDirectory)/vscode-server-linux-$(VSCODE_ARCH)71sbomPackageName: "VS Code Linux $(VSCODE_ARCH) Server"72sbomPackageVersion: $(Build.SourceVersion)73- output: pipelineArtifact74targetPath: $(Build.ArtifactStagingDirectory)/out/web/vscode-server-linux-$(VSCODE_ARCH)-web.tar.gz75artifactName: vscode_web_linux_$(VSCODE_ARCH)_archive-unsigned76displayName: Publish web server archive77sbomBuildDropPath: $(Agent.BuildDirectory)/vscode-server-linux-$(VSCODE_ARCH)-web78sbomPackageName: "VS Code Linux $(VSCODE_ARCH) Web"79sbomPackageVersion: $(Build.SourceVersion)80- output: pipelineArtifact81targetPath: $(Build.ArtifactStagingDirectory)/out/deb/$(DEB_PACKAGE_NAME)82artifactName: vscode_client_linux_$(VSCODE_ARCH)_deb-package83displayName: Publish deb package84sbomBuildDropPath: .build/linux/deb85sbomPackageName: "VS Code Linux $(VSCODE_ARCH) DEB"86sbomPackageVersion: $(Build.SourceVersion)87- output: pipelineArtifact88targetPath: $(Build.ArtifactStagingDirectory)/out/rpm/$(RPM_PACKAGE_NAME)89artifactName: vscode_client_linux_$(VSCODE_ARCH)_rpm-package90displayName: Publish rpm package91sbomBuildDropPath: .build/linux/rpm92sbomPackageName: "VS Code Linux $(VSCODE_ARCH) RPM"93sbomPackageVersion: $(Build.SourceVersion)94- ${{ if eq(parameters.VSCODE_BUILD_LINUX_SNAP, true) }}:95- output: pipelineArtifact96targetPath: $(Build.ArtifactStagingDirectory)/out/snap/$(SNAP_PACKAGE_NAME)97artifactName: vscode_client_linux_$(VSCODE_ARCH)_snap98displayName: Publish snap package99sbomBuildDropPath: $(SNAP_EXTRACTED_PATH)100sbomPackageName: "VS Code Linux $(VSCODE_ARCH) SNAP"101sbomPackageVersion: $(Build.SourceVersion)102steps:103- template: ./steps/product-build-linux-compile.yml@self104parameters:105VSCODE_ARCH: ${{ parameters.VSCODE_ARCH }}106VSCODE_CIBUILD: ${{ parameters.VSCODE_CIBUILD }}107VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}108VSCODE_BUILD_LINUX_SNAP: ${{ parameters.VSCODE_BUILD_LINUX_SNAP }}109VSCODE_RUN_ELECTRON_TESTS: ${{ parameters.VSCODE_RUN_ELECTRON_TESTS }}110VSCODE_RUN_BROWSER_TESTS: ${{ parameters.VSCODE_RUN_BROWSER_TESTS }}111VSCODE_RUN_REMOTE_TESTS: ${{ parameters.VSCODE_RUN_REMOTE_TESTS }}112113114