]> git.proxmox.com Git - mirror_edk2.git/blame - OvmfPkg/PlatformCI/.azurepipelines/Windows-VS2019.yml
OvmfPkg: Add Platform CI and configuration for Core CI
[mirror_edk2.git] / OvmfPkg / PlatformCI / .azurepipelines / Windows-VS2019.yml
CommitLineData
6cdf647b
SB
1## @file\r
2# Azure Pipeline build file for building a platform.\r
3#\r
4# Platform: OVMF\r
5# OS: Windows\r
6# Toolchain: VS2019\r
7#\r
8# Copyright (c) Microsoft Corporation.\r
9# SPDX-License-Identifier: BSD-2-Clause-Patent\r
10##\r
11trigger:\r
12 - master\r
13pr:\r
14 - master\r
15jobs:\r
16 - job: Platform_CI\r
17 variables:\r
18 package: 'OvmfPkg'\r
19 vm_image: 'windows-latest'\r
20 should_run: true\r
21 run_flags: "MAKE_STARTUP_NSH=TRUE QEMU_HEADLESS=TRUE"\r
22\r
23 #Use matrix to speed up the build process\r
24 strategy:\r
25 matrix:\r
26 OVMF_IA32_DEBUG:\r
27 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
28 Build.Arch: "IA32"\r
29 Build.Flags: ""\r
30 Build.Target: "DEBUG"\r
31 Run.Flags: $(run_flags)\r
32 Run: $(should_run)\r
33 OVMF_IA32_RELEASE:\r
34 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
35 Build.Arch: "IA32"\r
36 Build.Flags: ""\r
37 Build.Target: "RELEASE"\r
38 Run.Flags: $(run_flags)\r
39 Run: $(should_run)\r
40 OVMF_IA32_NOOPT:\r
41 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
42 Build.Arch: "IA32"\r
43 Build.Flags: ""\r
44 Build.Target: "NOOPT"\r
45 Run.Flags: $(run_flags)\r
46 Run: $(should_run)\r
47\r
48 OVMF_X64_DEBUG:\r
49 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
50 Build.Arch: "X64"\r
51 Build.Flags: ""\r
52 Build.Target: "DEBUG"\r
53 Run.Flags: $(run_flags)\r
54 Run: $(should_run)\r
55 OVMF_X64_RELEASE:\r
56 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
57 Build.Arch: "X64"\r
58 Build.Flags: ""\r
59 Build.Target: "RELEASE"\r
60 Run.Flags: $(run_flags)\r
61 Run: $(should_run)\r
62 OVMF_X64_NOOPT:\r
63 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
64 Build.Arch: "X64"\r
65 Build.Flags: ""\r
66 Build.Target: "NOOPT"\r
67 Run.Flags: $(run_flags)\r
68 Run: $(should_run)\r
69\r
70 OVMF_IA32X64_DEBUG:\r
71 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
72 Build.Arch: "IA32,X64"\r
73 Build.Flags: ""\r
74 Build.Target: "DEBUG"\r
75 Run.Flags: $(run_flags)\r
76 Run: $(should_run)\r
77 OVMF_IA32X64_RELEASE:\r
78 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
79 Build.Arch: "IA32,X64"\r
80 Build.Flags: ""\r
81 Build.Target: "RELEASE"\r
82 Run.Flags: $(run_flags)\r
83 Run: $(should_run)\r
84 OVMF_IA32X64_NOOPT:\r
85 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
86 Build.Arch: "IA32,X64"\r
87 Build.Flags: ""\r
88 Build.Target: "NOOPT"\r
89 Run.Flags: $(run_flags)\r
90 Run: $(should_run)\r
91\r
92 OVMF_IA32X64_FULL_DEBUG:\r
93 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
94 Build.Arch: "IA32,X64"\r
95 Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"\r
96 Build.Target: "DEBUG"\r
97 Run.Flags: $(run_flags)\r
98 Run: $(should_run)\r
99 OVMF_IA32X64_FULL_RELEASE:\r
100 Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
101 Build.Arch: "IA32,X64"\r
102 Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"\r
103 Build.Target: "RELEASE"\r
104 Run.Flags: $(run_flags)\r
105 Run: $(should_run)\r
106\r
107 # This currently creates a very large image which is too big for the FDF declared range\r
108 # Ovmf maintainers suggest to skip this build for now.\r
109 #\r
110 # OVMF_IA32X64_FULL_NOOPT:\r
111 # Build.File: "$(package)/PlatformCI/PlatformBuild.py"\r
112 # Build.Arch: "IA32,X64"\r
113 # Build.Flags: "BLD_*_SECURE_BOOT_ENABLE=1 BLD_*_SMM_REQUIRE=1 BLD_*_TPM_ENABLE=1 BLD_*_TPM_CONFIG_ENABLE=1 BLD_*_NETWORK_TLS_ENABLE=1 BLD_*_NETWORK_IP6_ENABLE=1 BLD_*_NETWORK_HTTP_BOOT_ENABLE=1"\r
114 # Build.Target: "NOOPT"\r
115 # Run.Flags: $(run_flags)\r
116 # Run: $(should_run)\r
117\r
118 workspace:\r
119 clean: all\r
120\r
121 pool:\r
122 vmImage: $(vm_image)\r
123\r
124 steps:\r
125 - template: ../../../.azurepipelines/templates/platform-build-run-steps.yml\r
126 parameters:\r
127 tool_chain_tag: VS2019\r
128 build_pkg: $(package)\r
129 build_target: $(Build.Target)\r
130 build_arch: $(Build.Arch)\r
131 build_file: $(Build.File)\r
132 build_flags: $(Build.Flags)\r
133 run_flags: $(Run.Flags)\r
134 extra_install_step:\r
135 - powershell: choco install qemu; Write-Host "##vso[task.prependpath]c:\Program Files\qemu"\r
136 displayName: Install QEMU and Set QEMU on path # friendly name displayed in the UI\r
137 condition: and(gt(variables.pkg_count, 0), succeeded())\r
138\r