1- # Parameters ARE available in template expressions, and parameters can have default values,
2- # so they can be used to control yaml flow.
3-
4- # trigger ci builds for completed checkins into main and any release branches
51trigger :
2+ batch : true
63 branches :
74 include :
8- - main
9- - release/*
10- - internal/release/*
11- - internal/experimental/*
12- paths :
13- include :
14- - ' *'
15- exclude :
16- - .github/*
17- - docs/*
18- - CODE-OF-CONDUCT.md
19- - CONTRIBUTING.md
20- - LICENSE.TXT
21- - PATENTS.TXT
22- - README.md
23- - SECURITY.md
24- - THIRD-PARTY-NOTICES.TXT
5+ - main
6+ - release/*
7+
8+ pr : none
259
2610variables :
27- - name : TeamName
28- value : DotNetCore
29- # clean the local repo on the build agents
30- - name : Build.Repository.Clean
31- value : true
32- - ${{ if or(startswith(variables['Build.SourceBranch'], 'refs/heads/release/'), startswith(variables['Build.SourceBranch'], 'refs/heads/internal/release/'), eq(variables['Build.Reason'], 'Manual')) }} :
33- - name : PostBuildSign
11+ - name : _PublishUsingPipelines
3412 value : false
35- - ${{ else }} :
36- - name : PostBuildSign
37- value : true
38- - name : EnableLoc
39- value : ${{ contains(variables['Build.SourceBranch'], 'main') }}
40- - name : NativeToolsOnMachine
41- value : true
42-
43- # used for post-build phases
44- - group : DotNet-Winforms-SDLValidation-Params
45- - group : AzureDevOps-Artifact-Feeds-Pats
46- - name : _InternalRuntimeDownloadArgs
47- value : /p:DotNetRuntimeSourceFeed=https://ci.dot.net/internal
48- /p:DotNetRuntimeSourceFeedKey=$(dotnetbuilds-internal-container-read-token-base64)
49-
50- # Set up non-PR build from internal project
51- # needed for darc (dependency flow) publishing
52- - name : _PublishArgs
53- value : >-
54- /p:DotNetPublishUsingPipelines=true
55- - name : _OfficialBuildIdArgs
56- value : /p:OfficialBuildId=$(BUILD.BUILDNUMBER)
57- # needed for signing
58- - name : _SignType
59- value : real
60- - name : _SignArgs
61- value : /p:DotNetSignType=$(_SignType) /p:TeamName=$(_TeamName) /p:Sign=$(_Sign)
62- - name : _Sign
63- value : true
64- - ${{ if and(notin(variables['Build.Reason'], 'PullRequest'), eq(variables['Build.SourceBranch'], 'refs/heads/main')) }} :
13+ - name : EnableLoc
14+ value : ${{ contains(variables['Build.SourceBranch'], 'main') }}
6515 - name : enableSourceIndex
66- value : true
16+ value : ${{ contains(variables['Build.SourceBranch'], 'main') }}
17+ - template : /eng/common/templates-official/variables/pool-providers.yml@self
18+
6719resources :
6820 repositories :
6921 - repository : 1ESPipelineTemplates
@@ -74,92 +26,37 @@ extends:
7426 template : v1/1ES.Official.PipelineTemplate.yml@1ESPipelineTemplates
7527 parameters :
7628 sdl :
77- policheck :
78- enabled : true
79- binskim :
80- enabled : true
81- tsa :
82- enabled : true
83- configFile : ' $(Build.SourcesDirectory)/eng/pipelines/tsaoptions.json'
84- featureFlags :
85- autoBaseline : true
86- pool :
87- ${{ if eq(contains(coalesce(variables['System.PullRequest.TargetBranch'], variables['Build.SourceBranch'], 'refs/heads/main'), 'release'), 'true') }} :
88- name : NetCore1ESPool-Svc-Internal
89- ${{ else }} :
90- name : NetCore1ESPool-Internal
91- # image is described here - https://helix.dot.net/#1ESHostedPoolImagesWestUS-rg-Internal
92- image : windows.vs2022preview.amd64
93- os : windows
94- customBuildTags :
95- - ES365AIMigrationTooling
29+ createAdoIssuesForJustificationsForDisablement : false
30+ sourceAnalysisPool :
31+ name : $(DncEngInternalBuildPool)
32+ image : 1es-windows-2022
33+ os : windows
9634 stages :
97-
98- - stage : Build
35+ - stage : build
36+ displayName : Build
9937 jobs :
100-
101- # Windows x64
102- - template : /eng/pipelines/build.yml@self
38+ - template : /eng/common/templates-official/jobs/jobs.yml@self
10339 parameters :
104- name : Windows_x64
105- targetArchitecture : x64
106- skipTests : $(SkipTests)
107-
108- # Windows x86
109- - template : /eng/pipelines/build.yml@self
110- parameters :
111- name : Windows_x86
112- targetArchitecture : x86
113- skipTests : $(SkipTests)
114-
115- # Windows arm64
116- - template : /eng/pipelines/build.yml@self
117- parameters :
118- name : Windows_arm64
119- targetArchitecture : arm64
120- skipTests : $(SkipTests)
40+ enablePublishBuildArtifacts : true
41+ enablePublishBuildAssets : false
42+ enablePublishTestResults : false
43+ publishAssetsImmediately : true
44+ isAssetlessBuild : true
45+ enableTelemetry : true
12146
12247 - ${{ if eq(variables.enableSourceIndex, 'true') }} :
12348 - template : /eng/common/templates-official/job/source-index-stage1.yml@self
12449 parameters :
125- sourceIndexBuildCommand : eng\cibuild .cmd -restore -build -configuration Release /p:Platform=x64 /p:TargetArchitecture=x64 /bl:msbuild.binlog
50+ sourceIndexBuildCommand : eng\CIBuild .cmd -restore -build -configuration Release /p:Platform=x64 /p:TargetArchitecture=x64 /bl:msbuild.binlog
12651 binlogPath : msbuild.binlog
12752 pool :
12853 name : $(DncEngInternalBuildPool)
12954 demands : ImageOverride -equals windows.vs2022preview.amd64
13055
131- - ${{ if eq(variables['EnableLoc'], 'true') }} :
132- - stage : OneLocBuild
133- displayName : Publish localizable content to OneLocBuild
134- jobs :
56+ - ${{ if eq(variables['EnableLoc'], 'true') }} :
13557 - template : /eng/common/templates-official/job/onelocbuild.yml@self
13658 parameters :
13759 MirrorRepo : winforms
13860 UseCheckedInLocProjectJson : true
13961 LclSource : lclFilesfromPackage
14062 LclPackageId : ' LCL-JUNO-PROD-WINFORMS'
141-
142- - stage : PublishAssetRegistry
143- displayName : Publish to Build Asset Registry
144- dependsOn : Build
145- variables :
146- - template : /eng/common/templates-official/variables/pool-providers.yml@self
147- jobs :
148- # Publish to Build Asset Registry in order to generate the ReleaseConfigs artifact.
149- - template : /eng/common/templates-official/job/publish-build-assets.yml@self
150- parameters :
151- publishUsingPipelines : true
152- pool :
153- name : $(DncEngInternalBuildPool)
154- demands : ImageOverride -equals windows.vs2022preview.amd64
155-
156- # Copied from the arcade repo and modified for winforms
157- - template : /eng/common/templates-official/post-build/post-build.yml@self
158- parameters :
159- validateDependsOn : PublishAssetRegistry
160- publishingInfraVersion : 3
161- enableSymbolValidation : false
162- enableSigningValidation : false
163- enableNugetValidation : false
164- enableSourceLinkValidation : false
165-
0 commit comments