So even though the scope for right now is to build the package only, since these are platforms I think they would better align with a platform build pipeline rather than the stuart_ci_build pipeline.   Basically we would setup a new pipeline that builds each platform.  To start they can just build but I image rather quickly we could add boot to shell capability and then follow that on with a set of tests run from the shell. 

 

A platform pipeline obviously has to compile the package too so it will be covered. 

 

Thanks

Sean

 

 

From: Gao, Liming <liming.gao@intel.com>
Sent: Thursday, March 26, 2020 7:04 PM
To: Kinney, Michael D <michael.d.kinney@intel.com>; Bret Barkelew <Bret.Barkelew@microsoft.com>; Zhang, Shenglei <shenglei.zhang@intel.com>; devel@edk2.groups.io
Cc: Sean Brogan <sean.brogan@microsoft.com>
Subject: RE: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

BZ 2570 request build test only. The boot functionality test can be added later.

 

Ovmf has three combination for X86, IA32, X64 and IA32X64. Emulator has two combination IA32, and X64. Can they be supported?

 

Thanks

Liming

From: Kinney, Michael D <michael.d.kinney@intel.com>
Sent: 2020
327 9:59
To: Bret Barkelew <Bret.Barkelew@microsoft.com>; Zhang, Shenglei <shenglei.zhang@intel.com>; devel@edk2.groups.io; Kinney, Michael D <michael.d.kinney@intel.com>
Cc: Sean Brogan <sean.brogan@microsoft.com>; Gao, Liming <liming.gao@intel.com>
Subject: RE: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

Bret,

 

Yes.  Let’s start with build testing.

 

It will be good to boot the shell and run test suites like UEFI SCTs from the shell of OVMF in a CI agent, but that could be a scheduled post-commit task.  Booting the shell is fast enough that we could consider it for pre-commit.

 

Mike

 

 

From: Bret Barkelew <Bret.Barkelew@microsoft.com>
Sent: Thursday, March 26, 2020 5:15 PM
To: Kinney, Michael D <michael.d.kinney@intel.com>; Zhang, Shenglei <shenglei.zhang@intel.com>; devel@edk2.groups.io
Cc: Sean Brogan <sean.brogan@microsoft.com>; Gao, Liming <liming.gao@intel.com>
Subject: RE: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

So just clarifying, the only thing in scope right now is a simple build-test against these packages. There’s no desire to run tests within the Ovmf environment itself?

 

- Bret

 

From: Kinney, Michael D
Sent: Thursday, March 26, 2020 5:00 PM
To: Bret Barkelew; Zhang, Shenglei; devel@edk2.groups.io; Kinney, Michael D
Cc: Sean Brogan; Gao, Liming
Subject: RE: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

Bret,

 

I would like to see issues with these platforms packages caught pre-commit.  If a core package change breaks one of these platforms, the we can potentially prevent an issue in many other platforms.

 

Mike

 

From: Bret Barkelew <Bret.Barkelew@microsoft.com>
Sent: Thursday, March 26, 2020 4:27 PM
To: Zhang, Shenglei <shenglei.zhang@intel.com>; devel@edk2.groups.io
Cc: Sean Brogan <sean.brogan@microsoft.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Gao, Liming <liming.gao@intel.com>
Subject: RE: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

Taking a moment to look at this a different way…

 

Is it expected at some point that we would want to run OvmfPkg-based integration tests as part of a “second-pass” automatic validation (maybe not a PR-gate, since those should be as fast as possible, but a nightly CI)? If so, I think I’d rather see these platforms covered under that pipeline.

 

If anyone would be interested in pursuing that approach (which would also be more portable to other platforms in edk2-platforms, if they should want automated nightlys at some point), I’d be happy to put a pin in this topic and throw up a prototype of what that might look like.

 

Thanks!

 

- Bret

 

From: Shenglei Zhang
Sent: Thursday, March 26, 2020 12:04 AM
To: devel@edk2.groups.io
Cc: Sean Brogan; Bret Barkelew; Kinney, Michael D; Liming Gao
Subject: [EXTERNAL] [PATCH] .azurepipelines: Enable CI for OvmfPkg and EmulatorPkg

 

REF: https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fbugzilla.tianocore.org%2Fshow_bug.cgi%3Fid%3D2570&amp;data=02%7C01%7CBret.Barkelew%40microsoft.com%7C198058e322e7419c15d708d7d153eaff%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637208030668393225&amp;sdata=TkqjqO7Fi%2BN7FPgJ0FlRcD4T59zCu7hfWQRbb%2FO5dKA%3D&amp;reserved=0
OvmfPkg and EmulatorPkg are mostly used by the developers, so add
them to target list.

Cc: Sean Brogan <sean.brogan@microsoft.com>
Cc: Bret Barkelew <Bret.Barkelew@microsoft.com>
Cc: Michael D Kinney <michael.d.kinney@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Signed-off-by: Shenglei Zhang <shenglei.zhang@intel.com>
---
 .azurepipelines/templates/pr-gate-build-job.yml | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/.azurepipelines/templates/pr-gate-build-job.yml b/.azurepipelines/templates/pr-gate-build-job.yml
index 61868554d43c..34f03745cc70 100644
--- a/.azurepipelines/templates/pr-gate-build-job.yml
+++ b/.azurepipelines/templates/pr-gate-build-job.yml
@@ -44,6 +44,12 @@ jobs:
       TARGET_SECURITY:
         Build.Pkgs: 'SecurityPkg'
         Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
+      TARGET_OVMF:
+        Build.Pkgs: 'OvmfPkg'
+        Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
+      TARGET_EMULATOR:
+        Build.Pkgs: 'EmulatorPkg'
+        Build.Targets: 'DEBUG,RELEASE,NO-TARGET'
 
   workspace:
     clean: all
--
2.18.0.windows.1