Skip to content

Commit

Permalink
Moving OneBranch test to parallel build. (#4774)
Browse files Browse the repository at this point in the history
* Adding OneBranch Test Updates

* Updating OneBranch CI build

* Moving tests to different pool

* Updates

* Use Java 11

* Updating Android install

* enabling OneBranch Signing

* Reactor and Clean up

---------

Co-authored-by: trwalke <trwalke@microsoft.com>
  • Loading branch information
trwalke and trwalke committed May 24, 2024
1 parent 3c0e06e commit 35c789d
Show file tree
Hide file tree
Showing 6 changed files with 77 additions and 129 deletions.
22 changes: 1 addition & 21 deletions build/template-OneBranch-CI-libsandsamples.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -30,24 +30,4 @@ steps:
solution: ${{ parameters.Solution }}
msbuildArgs: '/p:RunCodeAnalysis=false /p:MsalClientSemVer=${{ parameters.MsalClientSemVer }} /p:SourceLinkCreate=true /p:ContinousIntegrationBuild=true'
platform: ${{ parameters.BuildPlatform }}
configuration: ${{ parameters.BuildConfiguration }}

- powershell: 'powershell.exe -File "$(MsalSourceDir)build\installEdgeDriver.ps1" -ExecutionPolicy Bypass'
displayName: 'Install EdgeDriver'

# Run All Desktop Tests
- template: template-run-all-tests.yaml
parameters:
BuildConfiguration: '$(BuildConfiguration)'

- task: VSTest@2
displayName: 'Run cache compat tests'
condition: and(succeeded(), eq(variables['RunTests'], 'true'))
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: '**\CacheCompat\CommonCache.Test.Unit\bin\**\CommonCache.Test.Unit.dll'
searchFolder: '$(System.DefaultWorkingDirectory)'
codeCoverageEnabled: true
failOnMinTestsNotRun: true
minimumExpectedTests: '1'
runInParallel: true
configuration: ${{ parameters.BuildConfiguration }}
54 changes: 54 additions & 0 deletions build/template-OneBranch-Tests-libsandsamples.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
# template-OneBranch-Tests-libsandsamples.yaml
# Performs Nuget Restore and Build of LibsAndSamples.sln based on BuildPlatform and BuildConfiguration

parameters:
BuildPlatform: 'any cpu'
BuildConfiguration: 'release'
MsalClientSemVer: '4.0.0-devopsbuild'
MsalSourceDir: '' #Default MSAL Location

steps:
- task: CmdLine@2
displayName: 'Clear local NuGet cache'
inputs:
script: 'nuget locals all -clear'

- task: VSBuild@1
displayName: 'NuGet restore ${{ parameters.Solution }}'
inputs:
solution: ${{ parameters.Solution }}
msbuildArgs: '/t:restore'
platform: ${{ parameters.BuildPlatform }}
configuration: ${{ parameters.BuildConfiguration }}

- task: JavaToolInstaller@0
displayName: 'Use Java 11'
inputs:
versionSpec: 11
jdkArchitectureOption: x64
jdkSourceOption: PreInstalled

- task: VSBuild@1
displayName: 'Build solution ${{ parameters.Solution }}'
inputs:
solution: ${{ parameters.Solution }}
msbuildArgs: '/p:RunCodeAnalysis=false /p:MsalClientSemVer=${{ parameters.MsalClientSemVer }} /p:SourceLinkCreate=true /p:ContinousIntegrationBuild=true'
platform: ${{ parameters.BuildPlatform }}
configuration: ${{ parameters.BuildConfiguration }}

# Run All Desktop Tests
- template: template-run-all-tests.yaml
parameters:
BuildConfiguration: '$(BuildConfiguration)'

- task: VSTest@2
displayName: 'Run cache compat tests'
condition: and(succeeded(), eq(variables['RunTests'], 'true'))
inputs:
testSelector: 'testAssemblies'
testAssemblyVer2: '**\CacheCompat\CommonCache.Test.Unit\bin\**\CommonCache.Test.Unit.dll'
searchFolder: '$(System.DefaultWorkingDirectory)'
codeCoverageEnabled: true
failOnMinTestsNotRun: true
minimumExpectedTests: '1'
runInParallel: true
13 changes: 0 additions & 13 deletions build/template-nuget-pack.yaml

This file was deleted.

33 changes: 7 additions & 26 deletions build/template-pack-and-sign-all-nugets.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,33 +47,14 @@ steps:
flattenFolders: true

# Sign all final nuget packages in the staging directory
- task: SFP.build-tasks.custom-build-task-1.EsrpCodeSigning@1
displayName: 'Sign Packages'
- task: onebranch.pipeline.signing@1
displayName: 'Sign Packages with OneBranch'
inputs:
ConnectedServiceName: 'IDDP Code Signing'
FolderPath: '$(Build.ArtifactStagingDirectory)\packages'
Pattern: '*nupkg'
signConfigType: inlineSignParams
inlineOperation: |
[
{
"keyCode": "CP-401405",
"operationSetCode": "NuGetSign",
"parameters": [ ],
"toolName": "sign",
"toolVersion": "1.0"
},
{
"keyCode": "CP-401405",
"operationSetCode": "NuGetVerify",
"parameters": [ ],
"toolName": "sign",
"toolVersion": "1.0"
}
]
SessionTimeout: 20
VerboseLogin: true
timeoutInMinutes: 5
command: 'sign'
signing_profile: 'CP-401405'
files_to_sign: '*nupkg'
search_root: '$(Build.ArtifactStagingDirectory)\packages'
condition: and(succeeded(), eq(variables['PipelineType'], 'OneBranch'))

- task: CmdLine@2
displayName: 'Verify packages are signed'
Expand Down
24 changes: 15 additions & 9 deletions build/template-pack-and-sign-nuget.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,22 @@ parameters:
BuildConfiguration: 'release'
ProjectRootPath: ''
AssemblyName: ''
NoBuild: 'true'

steps:

- template: template-sign-binary.yaml
parameters:
FolderPath: '${{ parameters.ProjectRootPath }}\${{ parameters.AssemblyName }}'
Pattern: '**\bin\**\${{ parameters.AssemblyName }}.dll'
- task: onebranch.pipeline.signing@1
displayName: 'Sign ${{ parameters.LibraryName }} with OneBranch'
inputs:
command: 'sign'
signing_profile: 'external_distribution' #CP-230012 -> https://eng.ms/docs/products/onebranch/signing/containerbuildsigning#signing-using-onebranchpipelinesigning-ado-task
files_to_sign: '**\bin\**\${{ parameters.AssemblyName }}.dll'
search_root: '${{ parameters.ProjectRootPath }}\${{ parameters.AssemblyName }}'
condition: and(succeeded(), eq(variables['PipelineType'], 'OneBranch'))

- template: template-nuget-pack.yaml
parameters:
NoBuild: 'true'
BuildConfiguration: ${{ parameters.BuildConfiguration }}
ProjectPath: '${{ parameters.ProjectRootPath }}\${{ parameters.AssemblyName }}\${{ parameters.AssemblyName }}.csproj'
- task: VSBuild@1
displayName: 'Pack ${{ parameters.ProjectPath }}'
inputs:
solution: '${{ parameters.ProjectRootPath }}\${{ parameters.AssemblyName }}\${{ parameters.AssemblyName }}.csproj'
msbuildArgs: '/t:pack /p:nobuild=${{parameters.NoBuild}} /p:IncludeSymbols=true'
configuration: ${{ parameters.BuildConfiguration }}
60 changes: 0 additions & 60 deletions build/template-sign-binary.yaml

This file was deleted.

0 comments on commit 35c789d

Please sign in to comment.