Skip to content

Commit

Permalink
[ci] Install signing plugin after building (#8346)
Browse files Browse the repository at this point in the history
A few of the projects in our submodules are configured to sign output
files after build:

https://github.com/xamarin/xamarin-android-tools/blob/fa3711b7ddac7cea6850a9c1c67beda1996aafc0/src/Xamarin.Android.Tools.AndroidSdk/Xamarin.Android.Tools.AndroidSdk.csproj#L36
https://github.com/xamarin/androidtools/blob/720fd4e7cc2f018c681843210edfc796c97c1dde/Xamarin.AndroidTools/Xamarin.AndroidTools.csproj#L21

We should skip these sign requests during our build as we perform post
build signing for all of our shipping artifacts.
  • Loading branch information
pjcollins authored Sep 18, 2023
1 parent 795cc57 commit 554eb9e
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 8 deletions.
8 changes: 0 additions & 8 deletions build-tools/automation/yaml-templates/build-macos.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -45,21 +45,13 @@ stages:
path: ${{ parameters.checkoutPath }}
persistCredentials: ${{ parameters.checkoutPersistCredentials }}

- template: install-microbuild-tooling.yaml
parameters:
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))

- template: commercial-build.yaml
parameters:
installerArtifactName: ${{ parameters.installerArtifactName }}
nugetArtifactName: ${{ parameters.nugetArtifactName }}
provisionatorChannel: ${{ parameters.provisionatorChannel }}
testAssembliesArtifactName: ${{ parameters.testAssembliesArtifactName }}

- template: remove-microbuild-tooling.yaml
parameters:
condition: and(succeededOrFailed(), eq(variables['MicroBuildSignType'], 'Real'))

- powershell: |
[IO.Directory]::CreateDirectory("$(Build.StagingDirectory)/empty")
[IO.Directory]::CreateDirectory("$(Build.StagingDirectory)/sbom-components")
Expand Down
12 changes: 12 additions & 0 deletions build-tools/automation/yaml-templates/commercial-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -77,16 +77,22 @@ steps:
displayName: CodeQL 3000 Finalize
condition: and(succeededOrFailed(), eq(variables['Codeql.Enabled'], 'true'), eq(variables['Build.SourceBranch'], 'refs/heads/main'))

- template: install-microbuild-tooling.yaml
parameters:
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))

# Restore needs to be executed first or MicroBuild targets won't be imported in time
- task: MSBuild@1
displayName: msbuild /t:Restore sign-content.proj
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))
inputs:
solution: ${{ parameters.xaSourcePath }}/build-tools/installers/sign-content.proj
configuration: $(XA.Build.Configuration)
msbuildArguments: /t:Restore /bl:${{ parameters.xaSourcePath }}/bin/Build$(XA.Build.Configuration)/restore-sign-content.binlog

- task: MSBuild@1
displayName: PKG signing - add entitlements and sign
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))
inputs:
solution: ${{ parameters.xaSourcePath }}/build-tools/installers/sign-content.proj
configuration: $(XA.Build.Configuration)
Expand All @@ -98,6 +104,7 @@ steps:
- task: MSBuild@1
displayName: PKG signing - sign binutils libraries
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))
inputs:
solution: ${{ parameters.xaSourcePath }}/build-tools/installers/sign-content.proj
configuration: $(XA.Build.Configuration)
Expand All @@ -109,6 +116,7 @@ steps:
- task: MSBuild@1
displayName: PKG signing - sign binutils executables
condition: and(succeeded(), eq(variables['MicroBuildSignType'], 'Real'))
inputs:
solution: ${{ parameters.xaSourcePath }}/build-tools/installers/sign-content.proj
configuration: $(XA.Build.Configuration)
Expand All @@ -118,6 +126,10 @@ steps:
/p:MicroBuildOverridePluginDirectory=$(Build.StagingDirectory)/MicroBuild/Plugins
/bl:${{ parameters.xaSourcePath }}/bin/Build$(XA.Build.Configuration)/sign-bu-ex.binlog
- template: remove-microbuild-tooling.yaml
parameters:
condition: and(succeededOrFailed(), eq(variables['MicroBuildSignType'], 'Real'))

- script: make create-installers CONFIGURATION=$(XA.Build.Configuration) MSBUILD_ARGS='${{ parameters.makeMSBuildArgs }}'
workingDirectory: ${{ parameters.xaSourcePath }}
displayName: make create-installers
Expand Down

0 comments on commit 554eb9e

Please sign in to comment.