]> git.proxmox.com Git - mirror_edk2.git/blob - .azurepipelines/templates/pr-gate-build-job.yml
.azurepipelines: Update Core CI build matrix to include platforms
[mirror_edk2.git] / .azurepipelines / templates / pr-gate-build-job.yml
1 ## @file
2 # File templates/pr-gate-build-job.yml
3 #
4 # template file used to build supported packages.
5 #
6 # Copyright (c) Microsoft Corporation.
7 # SPDX-License-Identifier: BSD-2-Clause-Patent
8 ##
9
10 parameters:
11 tool_chain_tag: ''
12 vm_image: ''
13 arch_list: ''
14
15 # Build step
16 jobs:
17
18 - job: Build_${{ parameters.tool_chain_tag }}
19
20 #Use matrix to speed up the build process
21 strategy:
22 matrix:
23 TARGET_MDE_CPU:
24 Build.Pkgs: 'MdePkg,UefiCpuPkg'
25 Build.Targets: 'DEBUG,RELEASE,NO-TARGET,NOOPT'
26 TARGET_MDEMODULE_DEBUG:
27 Build.Pkgs: 'MdeModulePkg'
28 Build.Targets: 'DEBUG,NOOPT'
29 TARGET_MDEMODULE_RELEASE:
30 Build.Pkgs: 'MdeModulePkg'
31 Build.Targets: 'RELEASE,NO-TARGET'
32 TARGET_NETWORK:
33 Build.Pkgs: 'NetworkPkg'
34 Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
35 TARGET_OTHER:
36 Build.Pkgs: 'PcAtChipsetPkg,ShellPkg'
37 Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
38 TARGET_FMP_FAT_TEST:
39 Build.Pkgs: 'FmpDevicePkg,FatPkg,UnitTestFrameworkPkg'
40 Build.Targets: 'DEBUG,RELEASE,NO-TARGET,NOOPT'
41 TARGET_CRYPTO:
42 Build.Pkgs: 'CryptoPkg'
43 Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
44 TARGET_SECURITY:
45 Build.Pkgs: 'SecurityPkg'
46 Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
47 TARGET_PLATFORMS:
48 # For Platforms only check code. Leave it to Platform CI
49 # to build them.
50 Build.Pkgs: 'ArmVirtPkg,EmulatorPkg,OvmfPkg'
51 Build.Targets: 'NO-TARGET'
52
53 workspace:
54 clean: all
55
56 pool:
57 vmImage: ${{ parameters.vm_image }}
58
59 steps:
60 - template: pr-gate-steps.yml
61 parameters:
62 tool_chain_tag: ${{ parameters.tool_chain_tag }}
63 build_pkgs: $(Build.Pkgs)
64 build_targets: $(Build.Targets)
65 build_archs: ${{ parameters.arch_list }}
66
67 - job: FINISHED
68 dependsOn: Build_${{ parameters.tool_chain_tag }}
69 condition: succeeded()
70 steps:
71 - checkout: none
72 - script: |
73 echo FINISHED
74 sleep 10
75 displayName: FINISHED
76
77 - job: FAILED
78 dependsOn: Build_${{ parameters.tool_chain_tag }}
79 condition: failed()
80 steps:
81 - checkout: none
82 - script: |
83 echo FAILED
84 sleep 10
85 displayName: FAILED