eng: group cli build vs publish steps (#203920)

Fixes #203871
This commit is contained in:
Connor Peet 2024-01-31 11:22:50 -08:00 committed by GitHub
parent c1c6e6a77b
commit 3ad2e082c5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
6 changed files with 82 additions and 25 deletions

View file

@ -64,7 +64,7 @@ steps:
- x86_64-unknown-linux-musl
- ${{ if eq(parameters.VSCODE_BUILD_ALPINE_ARM64, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_CLI_TARGET: aarch64-unknown-linux-musl
VSCODE_CLI_ARTIFACT: vscode_cli_alpine_arm64_cli
@ -77,7 +77,7 @@ steps:
OPENSSL_STATIC: "1"
- ${{ if eq(parameters.VSCODE_BUILD_ALPINE, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_CLI_TARGET: x86_64-unknown-linux-musl
VSCODE_CLI_ARTIFACT: vscode_cli_alpine_x64_cli
@ -88,3 +88,13 @@ steps:
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/x64-linux-musl/lib
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/x64-linux-musl/include
OPENSSL_STATIC: "1"
- ${{ if eq(parameters.VSCODE_BUILD_ALPINE_ARM64, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: vscode_cli_alpine_arm64_cli
- ${{ if eq(parameters.VSCODE_BUILD_ALPINE, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: vscode_cli_alpine_x64_cli

View file

@ -98,10 +98,6 @@ steps:
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
- ${{ else }}:
- script: |
set -e
@ -120,10 +116,6 @@ steps:
archiveType: zip
archiveFile: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
- ${{ else }}:
- task: ArchiveFiles@2
displayName: Archive CLI
@ -134,10 +126,6 @@ steps:
tarCompression: gz
archiveFile: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.tar.gz
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.tar.gz
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
# Make a folder for the SBOM for the specific artifact
- ${{ if contains(parameters.VSCODE_CLI_TARGET, '-windows-') }}:
- powershell: mkdir $(Build.ArtifactStagingDirectory)/sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}
@ -156,7 +144,3 @@ steps:
BuildComponentPath: $(Build.SourcesDirectory)/cli
BuildDropPath: $(Build.ArtifactStagingDirectory)/sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}
PackageName: Visual Studio Code CLI
- publish: $(Build.ArtifactStagingDirectory)/sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}/_manifest
displayName: Publish SBOM
artifact: sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}

View file

@ -0,0 +1,28 @@
parameters:
- name: VSCODE_CLI_ARTIFACT
type: string
- name: VSCODE_CHECK_ONLY
type: boolean
default: false
steps:
- ${{ if not(parameters.VSCODE_CHECK_ONLY) }}:
- ${{ if contains(parameters.VSCODE_CLI_ARTIFACT, 'win32') }}:
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
- ${{ else }}:
- ${{ if contains(parameters.VSCODE_CLI_ARTIFACT, 'darwin') }}:
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.zip
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
- ${{ else }}:
- publish: $(Build.ArtifactStagingDirectory)/${{ parameters.VSCODE_CLI_ARTIFACT }}.tar.gz
artifact: ${{ parameters.VSCODE_CLI_ARTIFACT }}
displayName: Publish ${{ parameters.VSCODE_CLI_ARTIFACT }} artifact
- publish: $(Build.ArtifactStagingDirectory)/sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}/_manifest
displayName: Publish SBOM
artifact: sbom_${{ parameters.VSCODE_CLI_ARTIFACT }}

View file

@ -45,7 +45,7 @@ steps:
- aarch64-apple-darwin
- ${{ if eq(parameters.VSCODE_BUILD_MACOS, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: x86_64-apple-darwin
@ -56,7 +56,7 @@ steps:
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/x64-osx/include
- ${{ if eq(parameters.VSCODE_BUILD_MACOS_ARM64, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: aarch64-apple-darwin
@ -65,3 +65,13 @@ steps:
VSCODE_CLI_ENV:
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-osx/lib
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-osx/include
- ${{ if eq(parameters.VSCODE_BUILD_MACOS, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: unsigned_vscode_cli_darwin_x64_cli
- ${{ if eq(parameters.VSCODE_BUILD_MACOS_ARM64, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: unsigned_vscode_cli_darwin_arm64_cli

View file

@ -90,7 +90,7 @@ steps:
- armv7-unknown-linux-gnueabihf
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARM64, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: aarch64-unknown-linux-gnu
@ -102,7 +102,7 @@ steps:
SYSROOT_ARCH: arm64
- ${{ if eq(parameters.VSCODE_BUILD_LINUX, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: x86_64-unknown-linux-gnu
@ -114,7 +114,7 @@ steps:
SYSROOT_ARCH: amd64
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARMHF, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: armv7-unknown-linux-gnueabihf
@ -124,3 +124,18 @@ steps:
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm-linux/lib
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm-linux/include
SYSROOT_ARCH: armhf
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARMHF, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: vscode_cli_linux_armhf_cli
- ${{ if eq(parameters.VSCODE_BUILD_LINUX, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: vscode_cli_linux_x64_cli
- ${{ if eq(parameters.VSCODE_BUILD_LINUX_ARM64, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: vscode_cli_linux_arm64_cli

View file

@ -44,7 +44,7 @@ steps:
- aarch64-pc-windows-msvc
- ${{ if eq(parameters.VSCODE_BUILD_WIN32, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: x86_64-pc-windows-msvc
@ -56,7 +56,7 @@ steps:
RUSTFLAGS: "-C target-feature=+crt-static"
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_ARM64, true) }}:
- template: ../cli/cli-compile-and-publish.yml
- template: ../cli/cli-compile.yml
parameters:
VSCODE_QUALITY: ${{ parameters.VSCODE_QUALITY }}
VSCODE_CLI_TARGET: aarch64-pc-windows-msvc
@ -66,3 +66,13 @@ steps:
OPENSSL_LIB_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-windows-static/lib
OPENSSL_INCLUDE_DIR: $(Build.ArtifactStagingDirectory)/openssl/arm64-windows-static/include
RUSTFLAGS: "-C target-feature=+crt-static"
- ${{ if eq(parameters.VSCODE_BUILD_WIN32_ARM64, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: unsigned_vscode_cli_win32_arm64_cli
- ${{ if eq(parameters.VSCODE_BUILD_WIN32, true) }}:
- template: ../cli/cli-publish.yml
parameters:
VSCODE_CLI_ARTIFACT: unsigned_vscode_cli_win32_x64_cli