|
8 | 8 | - main
|
9 | 9 | - release/*
|
10 | 10 |
|
11 |
| -parameters: |
12 |
| -- name: ApiScanSourceBranch |
13 |
| - default: refs/heads/main |
14 |
| - |
15 | 11 | # Global variables
|
16 | 12 | variables:
|
17 | 13 | - name: DotNetCoreVersion
|
18 |
| - value: 6.0.x |
| 14 | + value: 9.0.x |
19 | 15 |
|
20 | 16 | jobs:
|
21 | 17 | - job: build
|
|
24 | 20 | strategy:
|
25 | 21 | matrix:
|
26 | 22 | macOS:
|
27 |
| - vmImage: macOS-13 |
| 23 | + vmImage: macOS-15 |
28 | 24 | windows:
|
29 | 25 | vmImage: windows-2022
|
30 |
| - Codeql.Enabled: true |
31 | 26 | pool:
|
32 | 27 | vmImage: $(vmImage)
|
33 | 28 | workspace:
|
|
41 | 36 | inputs:
|
42 | 37 | version: $(DotNetCoreVersion)
|
43 | 38 |
|
44 |
| - - task: UseDotNet@2 |
45 |
| - displayName: Use .NET Core 8.0.x |
46 |
| - inputs: |
47 |
| - version: 8.0.x |
48 |
| - |
49 | 39 | - task: DotNetCoreCLI@2
|
50 | 40 | displayName: Build solution Xamarin.Android.Tools.sln
|
51 | 41 | inputs:
|
|
87 | 77 | path: $(Build.ArtifactStagingDirectory)
|
88 | 78 | artifactName: Artifacts - $(System.JobName)
|
89 | 79 | condition: always()
|
90 |
| - |
91 |
| -- job: api_scan |
92 |
| - displayName: API Scan |
93 |
| - dependsOn: build |
94 |
| - condition: false |
95 |
| - #condition: and(eq(dependencies.build.result, 'Succeeded'), eq(variables['Build.SourceBranch'], '${{ parameters.ApiScanSourceBranch }}')) |
96 |
| - pool: |
97 |
| - name: Azure Pipelines |
98 |
| - vmImage: windows-2022 |
99 |
| - timeoutInMinutes: 480 |
100 |
| - workspace: |
101 |
| - clean: all |
102 |
| - steps: |
103 |
| - - task: DownloadPipelineArtifact@2 |
104 |
| - displayName: Download build artifacts |
105 |
| - inputs: |
106 |
| - artifactName: Output - windows |
107 |
| - downloadPath: $(Build.SourcesDirectory) |
108 |
| - |
109 |
| - - task: CopyFiles@2 |
110 |
| - displayName: Collect Files for APIScan |
111 |
| - inputs: |
112 |
| - Contents: | |
113 |
| - $(Build.SourcesDirectory)\**\?(*.dll|*.exe|*.pdb) |
114 |
| - !$(Build.SourcesDirectory)\**\ls-jdks.* |
115 |
| - TargetFolder: $(Build.StagingDirectory)\apiscan |
116 |
| - OverWrite: true |
117 |
| - flattenFolders: true |
118 |
| - |
119 |
| - - powershell: Get-ChildItem -Path "$(Build.StagingDirectory)\apiscan" -Recurse |
120 |
| - displayName: List Files for APIScan |
121 |
| - |
122 |
| - - task: APIScan@2 |
123 |
| - displayName: Run APIScan |
124 |
| - inputs: |
125 |
| - softwareFolder: $(Build.StagingDirectory)\apiscan |
126 |
| - symbolsFolder: 'SRV*http://symweb;$(Build.StagingDirectory)\apiscan' |
127 |
| - softwareName: $(ApiScanName) |
128 |
| - softwareVersionNum: $(Build.SourceBranchName)-$(Build.SourceVersion)$(System.JobAttempt) |
129 |
| - isLargeApp: true |
130 |
| - toolVersion: Latest |
131 |
| - env: |
132 |
| - AzureServicesAuthConnectionString: runAs=App;AppId=$(ApiScanClientId);TenantId=$(ApiScanTenant);AppKey=$(ApiScanSecret) |
133 |
| - |
134 |
| - - task: SdtReport@2 |
135 |
| - displayName: Guardian Export - Security Report |
136 |
| - inputs: |
137 |
| - GdnExportAllTools: false |
138 |
| - GdnExportGdnToolApiScan: true |
139 |
| - GdnExportOutputSuppressionFile: source.gdnsuppress |
140 |
| - |
141 |
| - - task: PublishSecurityAnalysisLogs@3 |
142 |
| - displayName: Publish Guardian Artifacts |
143 |
| - inputs: |
144 |
| - ArtifactName: APIScan Logs |
145 |
| - ArtifactType: Container |
146 |
| - AllTools: false |
147 |
| - APIScan: true |
148 |
| - ToolLogsNotFoundAction: Warning |
149 |
| - |
150 |
| - - task: PostAnalysis@2 |
151 |
| - displayName: Fail Build on Guardian Issues |
152 |
| - inputs: |
153 |
| - GdnBreakAllTools: false |
154 |
| - GdnBreakGdnToolApiScan: true |
0 commit comments