|
| 1 | +resources: |
| 2 | + repositories: |
| 3 | + - repository: 1ESPipelineTemplates |
| 4 | + type: git |
| 5 | + name: 1ESPipelineTemplates/1ESPipelineTemplates |
| 6 | + ref: refs/tags/release |
| 7 | + |
1 | 8 | parameters:
|
2 | 9 | - name: ServiceDirectory
|
3 | 10 | type: string
|
@@ -93,61 +100,86 @@ parameters:
|
93 | 100 | type: boolean
|
94 | 101 | default: false
|
95 | 102 |
|
96 |
| -stages: |
97 |
| -- ${{ each cloud in parameters.CloudConfig }}: |
98 |
| - - ${{ if or(contains(parameters.Clouds, cloud.key), and(contains(variables['Build.DefinitionName'], 'tests-weekly'), contains(parameters.SupportedClouds, cloud.key))) }}: |
99 |
| - - ${{ if not(contains(parameters.UnsupportedClouds, cloud.key)) }}: |
100 |
| - - stage: ${{ cloud.key }}_${{ parameters.JobName }} |
101 |
| - dependsOn: [] |
102 |
| - jobs: |
103 |
| - - template: /eng/common/pipelines/templates/jobs/archetype-sdk-tests-generate.yml |
104 |
| - parameters: |
105 |
| - SparseCheckoutPaths: |
106 |
| - # Python recording files are implicit excluded here since they are using '.yaml' file extension. |
107 |
| - - "sdk/${{ parameters.ServiceDirectory }}/**/*.json" |
108 |
| - JobTemplatePath: /eng/pipelines/templates/jobs/live.tests.yml |
109 |
| - AdditionalParameters: |
110 |
| - ServiceDirectory: ${{ parameters.ServiceDirectory }} |
111 |
| - TestResourceDirectories: ${{ parameters.TestResourceDirectories }} |
112 |
| - PreSteps: |
113 |
| - - ${{ parameters.PlatformPreSteps }} |
114 |
| - - ${{ parameters.PreSteps }} |
115 |
| - PostSteps: |
116 |
| - - ${{ parameters.PlatformPostSteps }} |
117 |
| - - ${{ parameters.PostSteps }} |
118 |
| - EnvVars: ${{ parameters.EnvVars }} |
119 |
| - MaxParallel: ${{ parameters.MaxParallel }} |
120 |
| - BeforeTestSteps: ${{ parameters.BeforeTestSteps }} |
121 |
| - AfterTestSteps: ${{ parameters.AfterTestSteps }} |
122 |
| - AdditionalTestArgs: ${{ parameters.AdditionalTestArgs }} |
123 |
| - BuildTargetingString: ${{ parameters.BuildTargetingString }} |
124 |
| - TestMarkArgument: ${{ parameters.TestMarkArgument }} |
125 |
| - InjectedPackages: ${{ parameters.InjectedPackages }} |
126 |
| - BuildDocs: ${{ parameters.BuildDocs }} |
127 |
| - TestTimeoutInMinutes: ${{ parameters.TestTimeoutInMinutes }} |
128 |
| - TestProxy: ${{ parameters.TestProxy }} |
129 |
| - MatrixConfigs: |
130 |
| - # Enumerate platforms and additional platforms based on supported clouds (sparse platform<-->cloud matrix). |
131 |
| - - ${{ each config in parameters.MatrixConfigs }}: |
132 |
| - - ${{ config }} |
133 |
| - - ${{ each config in parameters.AdditionalMatrixConfigs }}: |
134 |
| - - ${{ config }} |
135 |
| - MatrixFilters: |
136 |
| - - ${{ each cloudFilter in cloud.value.MatrixFilters }}: |
137 |
| - - ${{ cloudFilter }} |
138 |
| - - ${{ parameters.MatrixFilters }} |
139 |
| - MatrixReplace: |
140 |
| - - ${{ each cloudReplace in cloud.value.MatrixReplace }}: |
141 |
| - - ${{ cloudReplace }} |
142 |
| - - ${{ parameters.MatrixReplace }} |
143 |
| - CloudConfig: |
144 |
| - SubscriptionConfiguration: ${{ cloud.value.SubscriptionConfiguration }} |
145 |
| - SubscriptionConfigurations: ${{ cloud.value.SubscriptionConfigurations }} |
146 |
| - Location: ${{ coalesce(parameters.Location, cloud.value.Location) }} |
147 |
| - Cloud: ${{ cloud.key }} |
148 | 103 |
|
149 |
| -- template: /eng/pipelines/templates/stages/python-analyze-weekly.yml |
| 104 | +extends: |
| 105 | + ${{ if eq(variables['System.TeamProject'], 'internal') }}: |
| 106 | + template: v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates |
| 107 | + ${{ else }}: |
| 108 | + template: v1/1ES.Unofficial.PipelineTemplate.yml@1ESPipelineTemplates |
150 | 109 | parameters:
|
151 |
| - BuildTargetingString: ${{ parameters.BuildTargetingString }} |
152 |
| - ServiceDirectory: ${{ parameters.ServiceDirectory }} |
153 |
| - JobName: ${{ parameters.JobName }} |
| 110 | + sdl: |
| 111 | + sourceAnalysisPool: |
| 112 | + name: azsdk-pool-mms-win-2022-1es-pt |
| 113 | + image: azsdk-pool-mms-win-2022-1espt |
| 114 | + os: windows |
| 115 | + codeql: |
| 116 | + compiled: |
| 117 | + enabled: false |
| 118 | + justificationForDisabling: "CodeQL times our pipelines out by running for 2+ hours before being force canceled." |
| 119 | + psscriptanalyzer: |
| 120 | + enabled: true |
| 121 | + break: true |
| 122 | + policy: M365 |
| 123 | + credscan: |
| 124 | + suppressionsFile: '$(Build.SourcesDirectory)/eng/CredScanSuppression.json' |
| 125 | + scanFolder: '$(Build.SourcesDirectory)/credscan.tsv' |
| 126 | + toolVersion: '2.3.12.23' |
| 127 | + baselineFiles: $(Build.SourcesDirectory)/eng/python.gdnbaselines |
| 128 | + stages: |
| 129 | + - ${{ each cloud in parameters.CloudConfig }}: |
| 130 | + - ${{ if or(contains(parameters.Clouds, cloud.key), and(contains(variables['Build.DefinitionName'], 'tests-weekly'), contains(parameters.SupportedClouds, cloud.key))) }}: |
| 131 | + - ${{ if not(contains(parameters.UnsupportedClouds, cloud.key)) }}: |
| 132 | + - stage: ${{ cloud.key }}_${{ parameters.JobName }} |
| 133 | + dependsOn: [] |
| 134 | + jobs: |
| 135 | + - template: /eng/common/pipelines/templates/jobs/archetype-sdk-tests-generate.yml@self |
| 136 | + parameters: |
| 137 | + SparseCheckoutPaths: |
| 138 | + # Python recording files are implicit excluded here since they are using '.yaml' file extension. |
| 139 | + - "sdk/${{ parameters.ServiceDirectory }}/**/*.json" |
| 140 | + JobTemplatePath: /eng/pipelines/templates/jobs/live.tests.yml |
| 141 | + AdditionalParameters: |
| 142 | + ServiceDirectory: ${{ parameters.ServiceDirectory }} |
| 143 | + TestResourceDirectories: ${{ parameters.TestResourceDirectories }} |
| 144 | + PreSteps: |
| 145 | + - ${{ parameters.PlatformPreSteps }} |
| 146 | + - ${{ parameters.PreSteps }} |
| 147 | + PostSteps: |
| 148 | + - ${{ parameters.PlatformPostSteps }} |
| 149 | + - ${{ parameters.PostSteps }} |
| 150 | + EnvVars: ${{ parameters.EnvVars }} |
| 151 | + MaxParallel: ${{ parameters.MaxParallel }} |
| 152 | + BeforeTestSteps: ${{ parameters.BeforeTestSteps }} |
| 153 | + AfterTestSteps: ${{ parameters.AfterTestSteps }} |
| 154 | + AdditionalTestArgs: ${{ parameters.AdditionalTestArgs }} |
| 155 | + BuildTargetingString: ${{ parameters.BuildTargetingString }} |
| 156 | + TestMarkArgument: ${{ parameters.TestMarkArgument }} |
| 157 | + InjectedPackages: ${{ parameters.InjectedPackages }} |
| 158 | + BuildDocs: ${{ parameters.BuildDocs }} |
| 159 | + TestTimeoutInMinutes: ${{ parameters.TestTimeoutInMinutes }} |
| 160 | + TestProxy: ${{ parameters.TestProxy }} |
| 161 | + MatrixConfigs: |
| 162 | + # Enumerate platforms and additional platforms based on supported clouds (sparse platform<-->cloud matrix). |
| 163 | + - ${{ each config in parameters.MatrixConfigs }}: |
| 164 | + - ${{ config }} |
| 165 | + - ${{ each config in parameters.AdditionalMatrixConfigs }}: |
| 166 | + - ${{ config }} |
| 167 | + MatrixFilters: |
| 168 | + - ${{ each cloudFilter in cloud.value.MatrixFilters }}: |
| 169 | + - ${{ cloudFilter }} |
| 170 | + - ${{ parameters.MatrixFilters }} |
| 171 | + MatrixReplace: |
| 172 | + - ${{ each cloudReplace in cloud.value.MatrixReplace }}: |
| 173 | + - ${{ cloudReplace }} |
| 174 | + - ${{ parameters.MatrixReplace }} |
| 175 | + CloudConfig: |
| 176 | + SubscriptionConfiguration: ${{ cloud.value.SubscriptionConfiguration }} |
| 177 | + SubscriptionConfigurations: ${{ cloud.value.SubscriptionConfigurations }} |
| 178 | + Location: ${{ coalesce(parameters.Location, cloud.value.Location) }} |
| 179 | + Cloud: ${{ cloud.key }} |
| 180 | + |
| 181 | + - template: /eng/pipelines/templates/stages/python-analyze-weekly.yml@self |
| 182 | + parameters: |
| 183 | + BuildTargetingString: ${{ parameters.BuildTargetingString }} |
| 184 | + ServiceDirectory: ${{ parameters.ServiceDirectory }} |
| 185 | + JobName: ${{ parameters.JobName }} |
0 commit comments