From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (NAM02-DM3-obe.outbound.protection.outlook.com [40.107.95.123]) by mx.groups.io with SMTP id smtpd.web12.64.1614882023560041924 for ; Thu, 04 Mar 2021 10:20:23 -0800 Authentication-Results: mx.groups.io; dkim=pass header.i=@microsoft.com header.s=selector2 header.b=XQvZQ2Gs; spf=pass (domain: microsoft.com, ip: 40.107.95.123, mailfrom: bret.barkelew@microsoft.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=jFJtiOQxOIFptLaGyNFeN4jVR1hAf2EXVO/S59n9Ta2b7PUhobsXNUXVuIJ/brXKWOn+PlRUK2ybw7G4pw03dIBX0jkJQ3J5HDuj1mcAC19iQrePYbbM7uQ6pGQeiEM314RKdW4w2E7sqOhDoEPLfpSAfoPlt0QP1zKoL0AWlTUkI6LlF+d0yinkxZMvmK1lGZkUjQIBYSwLgqTjRU1UAWC97CJ+imARw0VE+ULfGL+8eWvOZkZa9iZ5xqwWw6Xv+92mCSqwqBcpCMfGtpyZc6JLCTC1TylzuotwIIKbUYCDX76h1upTae0lq5C3qpkwUyZ72eg4pcC/9hwRHarlbQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YncoAFXBb8b+2mTmR2LLlpAat3B1vvxtssQ0wrm9tSw=; b=dUUjtf9RfKGRCqzu1RzN6knaa495mSoD/XG0CVtu7GE07MzVgma5xWXbyKCOdtlyNo9S4KPRT1d/pMeCt57SPJvbykH/7FLzQMzb6NOYr2Eyr0qBpF+6jXbos8x36f5j6IGaAIic+2vIL8/HWFjVeJmBXKNtNvuUO2qCKpg8nBOZ4WlEFqqkUEK76cY3JAad35t+rIHXV40gj71DsADdxvk5VtSnCHXVl/orVAYJ2BT0yq5/HuSpyqWJOutME0ykIw0F+ioOpgNCNp31mxEHcsqPOk/ldt7TnScSWpmLrOr39DWidpAfFVdhmIHwc+S4yDezUFSpD56sDYtRymSe9Q== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=microsoft.com; dmarc=pass action=none header.from=microsoft.com; dkim=pass header.d=microsoft.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=YncoAFXBb8b+2mTmR2LLlpAat3B1vvxtssQ0wrm9tSw=; b=XQvZQ2GsyJRr6K8WsPdPycDzzON1aPKyRp7gUZLS2StK2wKkZzf6zIPJVyHAbKUniPUjspOj4kUEyBO1EI8qywNHTlDt0tzmWrwuZFRiUjaAXrngQF69TF4XecOvGnSToa2W9xp0oTc4EjN5YmnZkIFkdsz8upADTF+MVjzdrxQ= Received: from MW4PR21MB1907.namprd21.prod.outlook.com (2603:10b6:303:71::8) by MWHPR21MB0830.namprd21.prod.outlook.com (2603:10b6:300:76::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3933.10; Thu, 4 Mar 2021 18:20:21 +0000 Received: from MW4PR21MB1907.namprd21.prod.outlook.com ([fe80::8ddb:dbee:7757:2d6a]) by MW4PR21MB1907.namprd21.prod.outlook.com ([fe80::8ddb:dbee:7757:2d6a%7]) with mapi id 15.20.3933.018; Thu, 4 Mar 2021 18:20:21 +0000 From: "Bret Barkelew" To: "devel@edk2.groups.io" , "rebecca@nuviainc.com" , "lersek@redhat.com" CC: Sean Brogan , "Kinney, Michael D" Subject: Re: [EXTERNAL] Re: [edk2-devel] generating the test matrix for local CI runs Thread-Topic: [EXTERNAL] Re: [edk2-devel] generating the test matrix for local CI runs Thread-Index: AQHXER4pxmuNHM2d60+oVWyzGXc9hqp0HKQOgAAFP9U= Date: Thu, 4 Mar 2021 18:20:21 +0000 Message-ID: References: <95b5738d-6af2-15ea-e69d-759b1599b00d@redhat.com>,, In-Reply-To: Accept-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: msip_labels: MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Enabled=True;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SiteId=72f988bf-86f1-41af-91ab-2d7cd011db47;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_SetDate=2021-03-04T17:54:35.8737457Z;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_ContentBits=0;MSIP_Label_f42aa342-8706-4288-bd11-ebb85995028c_Method=Privileged authentication-results: edk2.groups.io; dkim=none (message not signed) header.d=none;edk2.groups.io; dmarc=none action=none header.from=microsoft.com; x-originating-ip: [71.212.153.143] x-ms-publictraffictype: Email x-ms-office365-filtering-ht: Tenant x-ms-office365-filtering-correlation-id: 46a5dc36-14a2-434a-5ebf-08d8df3a2c44 x-ms-traffictypediagnostic: MWHPR21MB0830: x-ms-exchange-transport-forked: True x-ld-processed: 72f988bf-86f1-41af-91ab-2d7cd011db47,ExtAddr x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:9508; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: 1jk6+WLE6Wcy4HbvalpX5nfmkpZQYXLsFmrmVTgfxcfz0cbKEdg8CeFVGBTDfehJwzlFDzYbHUnxt51HOPbsr8u3keWNds0Dx9QcJ1YiVZCzyhn73ZK/OTWiRGzeVBycNUC8ITK6vp+0CB14tjbu+Y70lbHoO/ouvcQlf6RtelmOR5TN5zSMUdsWFJIu31WisJqHLM3QSsdKoFTbhbBwfIaZqQ2b2QPnAQdxkRILxC3mmbMgk/wDlXfDF1SJChVVKmd+EitBWyBpm4AB03iamzvMUQ+KQEULVIRTZukmhwti0dISseJJk5GVXRQxpAo4gDVgm/5l4gP7SA0NPz2C3Ndvxph3T5NCFkB+QNU7rg91Mue/cl7zQD/Aa5rQ2z1jISWVu52Nd07nr8xCL5JpptZepLtbPV8dlzKkOHtujnd/eBk8ykWLDDpzJwdauV9qD8LYEsB039BTy8BynzU77f5380aGO2XMNJR1SpdZ19FPG40OMvuwSXWBg8vve4amPQZilmqZv56ewRTerARjOwwffk6nwGxWjdN7alK/PtVrC3MrZ4FQi6zb5MhOQ6z4kKPDGxS2KbDJGaz/cOmnkLdmm7BcLidH509P4qQ6dNVrdufXfZEJ3Pm39YQ69W5IjynMtE1PxtbKxufkdu5Q1Q== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MW4PR21MB1907.namprd21.prod.outlook.com;PTR:;CAT:NONE;SFS:(4636009)(136003)(396003)(346002)(366004)(39860400002)(376002)(83380400001)(8990500004)(966005)(66476007)(8936002)(10290500003)(8676002)(52536014)(66946007)(76236003)(26005)(5660300002)(2906002)(7696005)(66556008)(4326008)(76116006)(478600001)(54906003)(82950400001)(55016002)(9686003)(316002)(110136005)(53546011)(166002)(64756008)(99936003)(186003)(82960400001)(66616009)(2940100002)(71200400001)(66446008)(86362001)(6506007)(33656002);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata: =?Windows-1252?Q?qBzlI7UUcbIVGa+cH43EKqTFKNbm8ALCAQkMjNY2BML8iGCP/LYPIHef?= =?Windows-1252?Q?SMJ+x7g7DanfyNF1cA5VAckJ8DmHGtl7dOVDwALb0gHbHYpmMlLFYIT/?= =?Windows-1252?Q?WaP7LtY0MXlhRkkwLol58k8/SPWRzop7PoVwUJrpTsFfqlzbmL5BPvIK?= =?Windows-1252?Q?f36PnRY+PTINphxP0luRSXRmgWyjTKYq0JAl1aC5Rj8433dbgkO4TPcj?= =?Windows-1252?Q?OnSFr2i5rOY07wfzg+mleaAzOR8TfoQacYsD6Wg9TA37uWPzQlzrLuqN?= =?Windows-1252?Q?gFipM0iOxLyo9l/V2SQZZdBfp0zxVB+cUu8392OuD9l4ramJal2+XadL?= =?Windows-1252?Q?O/eUGI0ZN3sqtKn/Vt0ZJ0zL9YK9gwCf2Xia7q/ux2HBAJ40J8vbYFzW?= =?Windows-1252?Q?op8iFWOH+/IerFBOiqWL5ef8+4NEK4Lr7dcVERW7oVYiKLIUVOYbrfuF?= =?Windows-1252?Q?ZBWTRhMNcUt91qcBNnKiZwNtLKBBwsof88cH2FOmG1+0Y7vsKaeSCIIB?= =?Windows-1252?Q?G+cjsSPVg8e35qk6oZdkSz5Lk01kbDVQnggFv/gaCOFs8r3fY71bdBXq?= =?Windows-1252?Q?j82Ps4WuO7we0tQlyAkT8DB7fcRp4nsyly4SWA941UHbL+8vb0MH+JLt?= =?Windows-1252?Q?30LGMi+MSA/0b6Lt56FJ4+Kvs4HwFGn5f/s+OULuILIOxEU6YhcgaNzT?= =?Windows-1252?Q?Ss9uBMOSwmwCLBLdgfACEZSQRPRn5vdzQeDE/UPhCejEt9zf8YSJy2Z8?= =?Windows-1252?Q?7C2HZxmmRcGeevHMJv9TmCXkXWabMbu943ZXvNkhBEYH5Divfbi+lc4Y?= =?Windows-1252?Q?Tsx2GQc36qfAngGLQ9m620WbGpWFJpUMk4yMfbuNR3SGpsFxkH7XDXxZ?= =?Windows-1252?Q?0AKiIRa2h4X5KgWYY4NMfsGpGSClm9E1dvYr7vkUZ1kN5AgN2Z7imchR?= =?Windows-1252?Q?JmX71C1nIXOJIoH9l0gvUdxJF48GNMccSjnJbxB1PlGxQzACUmNqOEnC?= =?Windows-1252?Q?bYIJzRXrngeffT/bi4j7LoTI98k5PlSV1BtdCspu5gz/waBjhode/Jml?= =?Windows-1252?Q?DObd9Gaw5Dp3Dn5e7ecAReSh2+epj35Vojf1uoNwrQCVTbLbYOchLQx1?= =?Windows-1252?Q?QdfFymEDf0LJ4l5pD91ftzyDAL4Q/2/u9otLyTsztAkf95ST3svOTmbH?= =?Windows-1252?Q?3jG0tzxIFGVAGFN6Hk61qTF3rrbm3hqK04reEOpHapA1yJZ+BS76jUM6?= =?Windows-1252?Q?IhhgyOnHGdhbhehVcAGp7G1TMwDR6iAY2kV/ddHulYYms4/H0kaVFeMB?= =?Windows-1252?Q?pPuWDDjnOCwLubHEU5JPa8JXA8Jdp8tMpHQjv2sWbCRvLOHbEFiZ0IBi?= =?Windows-1252?Q?G19vxbbtL8YH4Utd2Wv2tn2xVAEhJv14HIYyYoN0V9XK8IVBXmCK8SeT?= =?Windows-1252?Q?ESAKrcGozyFeDejVQsvBSw=3D=3D?= MIME-Version: 1.0 X-OriginatorOrg: microsoft.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: MW4PR21MB1907.namprd21.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 46a5dc36-14a2-434a-5ebf-08d8df3a2c44 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Mar 2021 18:20:21.5057 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 72f988bf-86f1-41af-91ab-2d7cd011db47 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: FpNsbv4VNAnZmrzOJNkHD9l6by90Ef2guF5/lyaF6gJUqeGMdXs+lcdObZk/DUisfsY4trtzNecvi+isV1Ub+A== X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR21MB0830 X-Groupsio-MsgNum: 72439 Content-Language: en-US Content-Type: multipart/related; boundary="_004_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_"; type="multipart/alternative" --_004_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_ Content-Type: multipart/alternative; boundary="_000_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_" --_000_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_ Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable Thinking further, it will skip some tests if you haven=92t installed the pr= erequisites (e.g. spell check). We could potentially add a single script to= install the prerequisites, but then there are the prereqs for the prereqs = (e.g. Node). To more clearly address your question, the =93tests=94 that a GitHub CI is= broken up into are arbitrary subdivisions of the tests that run locally (w= hen you run =93stuart_ci_build=94 without parameters) so that the workload = can be divided amongst the available worker agents. If you were to compare = the individual test logs against your local, monolithic test log, you would= find that all cases were covered in both (assuming the aforementioned prer= eqs are installed). - Bret From: Bret Barkelew via groups.io Sent: Thursday, March 4, 2021 9:57 AM To: devel@edk2.groups.io; rebecca@nuviainc.co= m; lersek@redhat.com Cc: Sean Brogan; Kinney, Michael D Subject: Re: [EXTERNAL] Re: [edk2-devel] generating the test matrix for lo= cal CI runs *An* answer is: - There=92s a DevOps virtual environment that you can run that will preten= d to be a build agent. I played with it years ago, but that was before the = CI tooling (and it was years ago) so I don=92t know how the capabilities co= mpare. My real answer is: - If you run the three commands -- setup, update, and build -- without any= parameters other than your TOOL_CHAIN_TAG, it should run all tests on all = packages for that particular OS/toolchain. - Bret From: Rebecca Cran via groups.io Sent: Thursday, March 4, 2021 9:45 AM To: devel@edk2.groups.io; lersek@redhat.com Cc: Sean Brogan; Bret Barkelew; Kinney, Michael D Subject: [EXTERNAL] Re: [edk2-devel] generating the test matrix for local = CI runs On 3/4/21 10:04 AM, Laszlo Ersek wrote: > (Sigh, my address book pulled one over me -- resending to the correct > list address now. Please ignore the previous posting that you may have > gotten "in private".) > > Hi All, > > while I can run specific CI tests locally, using the commands listed at: > > https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgith= ub.com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2F.pytool&data=3D04%7C01%7Cbr= et.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354b05%7C72f988bf86= f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnknown%7CTWFpbGZsb3d= 8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&= amp;sdata=3Dl8WblhD%2B7dpkFaCZ8roSfNUmj1imytHi5eUT%2F%2BKrLCo%3D&reserv= ed=3D0 > https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgith= ub.com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2FArmVirtPkg%2FPlatformCI&dat= a=3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354= b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnkno= wn%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVC= I6Mn0%3D%7C1000&sdata=3D8yG7Mro9Li4XeCvfmPhfReBbipz47nyAjUmMKMGfh%2Bo%3= D&reserved=3D0 > https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgith= ub.com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2FOvmfPkg%2FPlatformCI&data= =3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354= b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnkno= wn%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVC= I6Mn0%3D%7C1000&sdata=3DNUhAJ8zkITwPkvCrUqb7ZogSQTJuBXv0eL6Au0sYC2M%3D&= amp;reserved=3D0 > > I don't know how I can determine and drive the whole "test plan" locally= . > > When I submit a PR to github, "something" generates (say) 83 test cases. > How can I run that "something" locally? > > Assume I have the following: > - a Linux builder VM, with up-to-date tools, > - a Windows builder VM, with up-to-date tools, > - a topic branch, on top of "master". > > How do I generate and run those same 83 tests, locally? > > It has happened to me that all my local CI steps succeeded (meaning both > the Windows and the Linux builder), but github still rejected the PR -- > the reason was that I failed to think of a particular test that github > would run. Composing 83 "stuart" command lines isn't something I'd like > to do manually. FWIW it looks like people have been looking for similar functionality of testing a pipeline locally, and not found it. e.g.: https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithub= .com%2Fmicrosoft%2Fazure-pipelines-agent%2Fissues%2F1764&data=3D04%7C01= %7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354b05%7C72f98= 8bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnknown%7CTWFpbG= Zsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C= 1000&sdata=3DXMxZesyKxVN9Wg3SyRpUbnnmKzojevHCqQhzQ1Pc4%2Bg%3D&reser= ved=3D0 https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fdevelo= percommunity.visualstudio.com%2Ft%2Fyaml-how-to-test-yaml-locally-before-co= mmit%2F1302759&data=3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493= 578cf45b804c608d8df354b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C6375= 04767278995847%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIi= LCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=3DgwGZAQJAIXIS0LODFpglrCf5U= a2JeMnNm3A3auCrhx8%3D&reserved=3D0 -- Rebecca Cran --_000_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_ Content-Type: text/html; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable

Thinking further, it will skip some tests if you ha= ven=92t installed the prerequisites (e.g. spell check). We could potentiall= y add a single script to install the prerequisites, but then there are the = prereqs for the prereqs (e.g. Node).

 

To more clearly address your question, the =93tests= = =94 that a GitHub CI is broken up into are arbitrary subdivisions of the t= ests that run locally (when you run =93stuart_ci_build=94 without parameter= s) so that the workload can be divided amongst the available worker agents. If you were to compare the individual test l= ogs against your local, monolithic test log, you would find that all cases = were covered in both (assuming the aforementioned prereqs are installed).

 

- Bret

 

From: Bret Barkelew via gr= oups.io
Sent: Thursday, March 4, 2021 9:57 AM
To: devel@edk2.groups.io; rebecca@nuviainc.com; lersek@redh= at.com
Cc: Sean Brogan; <= a href=3D"mailto:michael.d.kinney@intel.com"> Kinney, Michael D
Subject: Re: [EXTERNAL] Re: [edk2-devel] generating the test matrix= for local CI runs

 

*An* answer is:

- There=92s a DevOps virtual environment that you c= an run that will pretend to be a build agent. I played with it years ago, b= ut that was before the CI tooling (and it was years ago) so I don=92t know = how the capabilities compare.

 

My real answer is:

- If you run the three commands -- setup, update, a= nd build -- without any parameters other than your TOOL_CHAIN_TAG, it shoul= d run all tests on all packages for that particular OS/toolchain.

 

- Bret

 

From: Rebecca Cran via groups.io
Sent: Thursday, March 4, 2021 9:45 AM
To: devel@edk2.groups.io; lersek@redhat.com
Cc: Sean Brogan; <= a href=3D"mailto:Bret.Barkelew@microsoft.com"> Bret Barkelew; Kinney, M= ichael D
Subject: [EXTERNAL] Re: [edk2-devel] generating the test matrix for= local CI runs

 

On 3/4/21 10:04 AM, = Laszlo Ersek wrote:
> (Sigh, my address book pulled one over me -- resending to the correct=
> list address now. Please ignore the previous posting that you may hav= e
> gotten "in private".)
>
> Hi All,
>
> while I can run specific CI tests locally, using the commands listed = at:
>
> https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithub= .com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2F.pytool&amp;data=3D04%7C01%7C= bret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354b05%7C72f988bf= 86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnknown%7CTWFpbGZsb= 3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C100= 0&amp;sdata=3Dl8WblhD%2B7dpkFaCZ8roSfNUmj1imytHi5eUT%2F%2BKrLCo%3D&= amp;reserved=3D0
> https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithub= .com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2FArmVirtPkg%2FPlatformCI&amp;d= ata=3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df3= 54b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnk= nown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJX= VCI6Mn0%3D%7C1000&amp;sdata=3D8yG7Mro9Li4XeCvfmPhfReBbipz47nyAjUmMKMGfh= %2Bo%3D&amp;reserved=3D0
> https://nam06.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgithub= .com%2Ftianocore%2Fedk2%2Ftree%2Fmaster%2FOvmfPkg%2FPlatformCI&amp;data= = =3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8df354= b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7CUnkno= wn%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVC= I6Mn0%3D%7C1000&amp;sdata=3DNUhAJ8zkITwPkvCrUqb7ZogSQTJuBXv0eL6Au0sYC2M= %3D&amp;reserved=3D0
>
> I don't know how I can determine and drive the whole "test plan&= quot; locally.
>
> When I submit a PR to github, "something" generates (say) 8= 3 test cases.
> How can I run that "something" locally?
>
> Assume I have the following:
> - a Linux builder VM, with up-to-date tools,
> - a Windows builder VM, with up-to-date tools,
> - a topic branch, on top of "master".
>
> How do I generate and run those same 83 tests, locally?
>
> It has happened to me that all my local CI steps succeeded (meaning b= oth
> the Windows and the Linux builder), but github still rejected the PR = --
> the reason was that I failed to think of a particular test that githu= b
> would run. Composing 83 "stuart" command lines isn't someth= ing I'd like
> to do manually.

FWIW it looks like people have been looking for similar functionality of <= br> testing a pipeline locally, and not found it.

e.g.:
https://nam06.safelinks.protection.outlook.com/?url=3Dhtt= ps%3A%2F%2Fgithub.com%2Fmicrosoft%2Fazure-pipelines-agent%2Fissues%2F1764&a= mp;amp;data=3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c= 608d8df354b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C6375047672789958= 47%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1h= aWwiLCJXVCI6Mn0%3D%7C1000&amp;sdata=3DXMxZesyKxVN9Wg3SyRpUbnnmKzojevHCq= QhzQ1Pc4%2Bg%3D&amp;reserved=3D0
https://nam06.safeli= nks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fdevelopercommunity.visualst= udio.com%2Ft%2Fyaml-how-to-test-yaml-locally-before-commit%2F1302759&am= p;data=3D04%7C01%7Cbret.barkelew%40microsoft.com%7Ce4e5493578cf45b804c608d8= df354b05%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C637504767278995847%7C= Unknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiL= CJXVCI6Mn0%3D%7C1000&amp;sdata=3DgwGZAQJAIXIS0LODFpglrCf5Ua2JeMnNm3A3au= Crhx8%3D&amp;reserved=3D0

--
Rebecca Cran



 

 

--_000_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_-- --_004_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_ Content-Type: image/png; name="61A417DF6E904358AC2AFB5E11FC6A23.png" Content-Description: 61A417DF6E904358AC2AFB5E11FC6A23.png Content-Disposition: inline; filename="61A417DF6E904358AC2AFB5E11FC6A23.png"; size=140; creation-date="Thu, 04 Mar 2021 18:20:20 GMT"; modification-date="Thu, 04 Mar 2021 18:20:20 GMT" Content-ID: Content-Transfer-Encoding: base64 iVBORw0KGgoAAAANSUhEUgAAAsQAAAABCAYAAADZ77itAAAAAXNSR0IArs4c6QAAAARnQU1BAACx jwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAhSURBVEhL7cMBDQAACAMg+5cygQkeRoMIG9WT VVXVn7MHYi5moJeByLMAAAAASUVORK5CYII= --_004_MW4PR21MB1907345A3D58A427F10EBB8CEF979MW4PR21MB1907namp_--